Mailform
Het lukt mij niet ervoor te zorgen dat name verplicht is.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
// insure form variables exist
$name = isset($_POST['name']) ? $_POST['name'] : '';
$email = isset($_POST['email']) ? $_POST['email'] : '';
$telefoon = isset($_POST['telefoon']) ? $_POST['telefoon'] : '';
$organisatie = isset($_POST['organisatie']) ? $_POST['organisatie'] : '';
$website = isset($_POST['website']) ? $_POST['website'] : '';
$beschrijving = isset($_POST['beschrijving']) ? $_POST['beschrijving'] : '';
$inspiratie = isset($_POST['inspiratie']) ? $_POST['inspiratie'] : '';
$human = isset($_POST['human']) ? $_POST['human'] : '';
$submit = isset($_POST['submit']) ? true : false;
$project = isset($_POST['project'])
? implode(', ', $_POST['project']) // gather selected checkboxes
: 'Er geen projecten geselecteerd'; // (Unsure of translation)
$from = 'Website Systeem';
$to = '[email protected]';
$subject = 'Mijn onderwerp';
$body =
"Van: $name\n
E-Mail: $email\n
Telefoon: $telefoon\n
Organisatie: $organisatie\n
Website: $website\n
Project Soort: $project\n
Omschrijving: $beschrijving\n
Inspiratie: $inspiratie";
if ($submit && $human == '4') {
if (mail ($to, $subject, $body, $from)) {
print ("Dank u wel");
echo '<p>Uw bericht is verzonden!</p>';
} else {
echo '<p>Oeps. Er ging iets fout. Probeer nogmaals.</p>';
}
} else if ($submit && $human != '4') {
echo '<p>Uw anti-spam antwoord is niet goed ingevuld.</p>';
}
?>
// insure form variables exist
$name = isset($_POST['name']) ? $_POST['name'] : '';
$email = isset($_POST['email']) ? $_POST['email'] : '';
$telefoon = isset($_POST['telefoon']) ? $_POST['telefoon'] : '';
$organisatie = isset($_POST['organisatie']) ? $_POST['organisatie'] : '';
$website = isset($_POST['website']) ? $_POST['website'] : '';
$beschrijving = isset($_POST['beschrijving']) ? $_POST['beschrijving'] : '';
$inspiratie = isset($_POST['inspiratie']) ? $_POST['inspiratie'] : '';
$human = isset($_POST['human']) ? $_POST['human'] : '';
$submit = isset($_POST['submit']) ? true : false;
$project = isset($_POST['project'])
? implode(', ', $_POST['project']) // gather selected checkboxes
: 'Er geen projecten geselecteerd'; // (Unsure of translation)
$from = 'Website Systeem';
$to = '[email protected]';
$subject = 'Mijn onderwerp';
$body =
"Van: $name\n
E-Mail: $email\n
Telefoon: $telefoon\n
Organisatie: $organisatie\n
Website: $website\n
Project Soort: $project\n
Omschrijving: $beschrijving\n
Inspiratie: $inspiratie";
if ($submit && $human == '4') {
if (mail ($to, $subject, $body, $from)) {
print ("Dank u wel");
echo '<p>Uw bericht is verzonden!</p>';
} else {
echo '<p>Oeps. Er ging iets fout. Probeer nogmaals.</p>';
}
} else if ($submit && $human != '4') {
echo '<p>Uw anti-spam antwoord is niet goed ingevuld.</p>';
}
?>
Toevoeging op 14/02/2015 21:03:42:
Heb van alles geprobeerd, wie kan mij helpen?
Niels Rietveld op 14/02/2015 21:03:18:
Heb van alles geprobeerd, wie kan mij helpen?
Wat heb je al geprobeerd?
Nu check je helemaal niks.
Dit probeerde ik:
Toevoeging op 14/02/2015 22:38:52:
Of doe ik het wel goed maar mis ik its
Gewijzigd op 14/02/2015 21:21:02 door Niels Rietveld
Maar of er een POST request word gestuurd:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
// met isset() controleren of een $_POST waarde bestaat
// nog een controle of alle variabelen uit de $_POST geeft wat jij wil
// zo niet error array maken en deze later in je form terug geven
// is de error array leeg, dan string opmaken
// mailen
}
// hier je formulier
?>
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
// met isset() controleren of een $_POST waarde bestaat
// nog een controle of alle variabelen uit de $_POST geeft wat jij wil
// zo niet error array maken en deze later in je form terug geven
// is de error array leeg, dan string opmaken
// mailen
}
// hier je formulier
?>
Om je op weg te helpen met name:
Code (php)
Bij het formulier:
Code (php)
Gewijzigd op 14/02/2015 22:58:39 door Bart V B
Ik begrijp het niet helemaal, kan je een voorbeeld geven/maken?
Wat snap je niet precies aan het gele commentaarblok? Waar loop je op vast?
Toevoeging op 14/02/2015 22:54:19:
En formulier begrijp ik ook natuurlijk
Zat een typo in. :)
Lukt helaas niet, is er nergens een goed voorbeeld
laat eens je code zien wat je ervan hebt gemaakt.
Staat hierboven?
Toevoeging op 14/02/2015 23:43:00:
@Aar, maar ik ben opzoek naar de foutmelding manier.
Kijk dan eens naar PHPmailer.
Toevoeging op 14/02/2015 23:46:23:
Kan je geen werkend voorbeeld geven toepasselijk voor name in dit geval.
Code van hierboven?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$error = array();
if(!isset($_POST['name']) OR trim($_POST) == '')
{
$error['name'] = 'Geen naam ingevuld.';
}
}
?>
<form name="form" method="POST" action ="">
<?php
if(isset($error['name']))
{
echo '<p>'.$error['name'].'</p>';
}
?>
<input type="text" name="name" value="<?php echo isset($_POST['name']) ? htmlspecialchars($_POST['name']) : '' ?>" ><br />
<input type="submit" name="submit" value="Zend">
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$error = array();
if(!isset($_POST['name']) OR trim($_POST) == '')
{
$error['name'] = 'Geen naam ingevuld.';
}
}
?>
<form name="form" method="POST" action ="">
<?php
if(isset($error['name']))
{
echo '<p>'.$error['name'].'</p>';
}
?>
<input type="text" name="name" value="<?php echo isset($_POST['name']) ? htmlspecialchars($_POST['name']) : '' ?>" ><br />
<input type="submit" name="submit" value="Zend">
Toevoeging op 14/02/2015 23:57:55:
En als ik iets invul krijg ik de melding ook dat ik niks ingevuld heb.
Kijk eens goed..
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$error = array();
if(!isset($_POST['name']) OR trim($_POST['name']) == '')
{
$error['name'] = 'Geen naam ingevuld.';
}
else
{
print_r($_POST);
}
}
?>
<form name="form" method="POST" action ="">
<?php
if(isset($error['name']))
{
echo '<p>'.$error['name'].'</p>';
}
?>
<input type="text" name="name" value="<?php echo isset($_POST['name']) ? htmlspecialchars($_POST['name']) : '' ?>" ><br />
<input type="submit" name="submit" value="Zend">
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$error = array();
if(!isset($_POST['name']) OR trim($_POST['name']) == '')
{
$error['name'] = 'Geen naam ingevuld.';
}
else
{
print_r($_POST);
}
}
?>
<form name="form" method="POST" action ="">
<?php
if(isset($error['name']))
{
echo '<p>'.$error['name'].'</p>';
}
?>
<input type="text" name="name" value="<?php echo isset($_POST['name']) ? htmlspecialchars($_POST['name']) : '' ?>" ><br />
<input type="submit" name="submit" value="Zend">
Laat expres een $_POST['name'] weg bij trim in de hoop dat je even zelf nadenkt.. ;)
Die warning is logisch. Je kan geen array() trimmen. Je moet een specifiek veld trimmen.