Hoe keuze menu/list verzenden via contactform?
Ik heb een contactformuliertje (form.php) gemaakt met daarin een keuzemenuutje waarin uit drie opties kan worden gekozen. Na het invullen van het formulier wordt deze verstuurd (via contactscript.php) naar mijn mailadres.
De mail komt netjes binnen echter de gekozen optie uit het keuzemenuutje wordt niet in de mail getoond.
Het menuutje in het formulier heb ik als volgt gemaakt:
<TR>
<TD height="31" valign="top"><span class="style35">Onderwerp:</span></TD>
<td><select name="onderwerp" style="WIDTH: 270px; BACKGROUND-COLOR:#dddddd">
<option value="Ik wil een bestelling doen">Ik wil een bestelling doen</option>
<option value="Ik heb een vraag over een bestelling">Ik heb een vraag over een bestelling</option>
<option value="Ik heb een algemene vraag">Ik heb een algemene vraag</option>
</select><tr></tr>
Het bijbehorende contactscript is als volgt:
Ik ben al een avondje aan het zoeken naar goede voorbeelden omtrent het verzenden van de keuze uit een keuzemenu maar het wil mij maar niet duidelijk worden hoe dit moet. Hopelijk wil iemand mij helpen, waarvoor mijn dank.
De mail komt netjes binnen echter de gekozen optie uit het keuzemenuutje wordt niet in de mail getoond.
Het menuutje in het formulier heb ik als volgt gemaakt:
<TR>
<TD height="31" valign="top"><span class="style35">Onderwerp:</span></TD>
<td><select name="onderwerp" style="WIDTH: 270px; BACKGROUND-COLOR:#dddddd">
<option value="Ik wil een bestelling doen">Ik wil een bestelling doen</option>
<option value="Ik heb een vraag over een bestelling">Ik heb een vraag over een bestelling</option>
<option value="Ik heb een algemene vraag">Ik heb een algemene vraag</option>
</select><tr></tr>
Het bijbehorende contactscript is als volgt:
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<?php
// VALUES FROM THE FORM
$name = $_POST['name'];
$email = $_POST['email'];
$telefoon = $_POST['telefoon'];
$onderwerp = $_POST['onderwerp'];
$message = $_POST['msg'];
// ERROR & SECURITY CHECKS
if ( ( !$email ) ||
( strlen($_POST['email']) > 200 ) ||
( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) )
)
{
Header("Location: http://www.swingexpress.nl/FOUT.htm");
exit;
}
if ( ( !$name ) ||
( strlen($name) > 100 ) ||
( preg_match("/[:=@\<\>]/", $name) )
)
{
Header("Location: http://www.swingexpress.nl/FOUT.htm");
exit;
}
if ( preg_match("#cc:#i", $message, $matches) )
{
Header("Location: http://www.website.nl/FOUT.htm");
exit;
}
if ( !$message )
{
Header("Location: http://www.website.nl/FOUT.htm");
exit;
}
if (eregi("\r",$email) || eregi("\n",$email)){
Header("Location: http://www.website.nl/FOUT.htm");
exit;
}
if (FALSE) {
Header("Location: http://www.website.nl/FOUT.htm");
exit;
}
// CREATE THE EMAIL
$headers = "Content-Type: text/plain; charset=iso-8859-1\n";
$headers .= "From: $name <$email>\n";
$recipient = "[email protected]";
$subject = "formulier";
$message = "Reactie vanaf het mailform op de website:\n";
$message .= " " . $_POST[''] . "\n";
$message .= " Opgegeven naam : " . $_POST['name'] . "\n";
$message .= " Opgegeven e-mail : " . $_POST['email'] . "\n";
$message .= " " . $_POST[''] . "\n";
$message .= " Opgegeven telefoon : " . $_POST['telefoon'] . "\n";
$message .= " " . $_POST[''] . "\n";
$message .= " Opgegeven onderwerp : " . $_POST['onderwerp'] . "\n";
$message .= " " . $_POST[''] . "\n";
$message .= " Opgegeven bericht : " . $_POST['msg'] . "\n";
$message .= " " . $_POST[''] . "\n";
$message .= " Einde bericht " . $_POST[''] . "\n";
// SEND THE EMAIL TO YOU
mail($recipient, $subject, $message, $headers);
// REDIRECT TO THE THANKS PAGE
header("location: http://www.website.nl/bedankt.htm");
?>
// VALUES FROM THE FORM
$name = $_POST['name'];
$email = $_POST['email'];
$telefoon = $_POST['telefoon'];
$onderwerp = $_POST['onderwerp'];
$message = $_POST['msg'];
// ERROR & SECURITY CHECKS
if ( ( !$email ) ||
( strlen($_POST['email']) > 200 ) ||
( !preg_match("#^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$#", $email) )
)
{
Header("Location: http://www.swingexpress.nl/FOUT.htm");
exit;
}
if ( ( !$name ) ||
( strlen($name) > 100 ) ||
( preg_match("/[:=@\<\>]/", $name) )
)
{
Header("Location: http://www.swingexpress.nl/FOUT.htm");
exit;
}
if ( preg_match("#cc:#i", $message, $matches) )
{
Header("Location: http://www.website.nl/FOUT.htm");
exit;
}
if ( !$message )
{
Header("Location: http://www.website.nl/FOUT.htm");
exit;
}
if (eregi("\r",$email) || eregi("\n",$email)){
Header("Location: http://www.website.nl/FOUT.htm");
exit;
}
if (FALSE) {
Header("Location: http://www.website.nl/FOUT.htm");
exit;
}
// CREATE THE EMAIL
$headers = "Content-Type: text/plain; charset=iso-8859-1\n";
$headers .= "From: $name <$email>\n";
$recipient = "[email protected]";
$subject = "formulier";
$message = "Reactie vanaf het mailform op de website:\n";
$message .= " " . $_POST[''] . "\n";
$message .= " Opgegeven naam : " . $_POST['name'] . "\n";
$message .= " Opgegeven e-mail : " . $_POST['email'] . "\n";
$message .= " " . $_POST[''] . "\n";
$message .= " Opgegeven telefoon : " . $_POST['telefoon'] . "\n";
$message .= " " . $_POST[''] . "\n";
$message .= " Opgegeven onderwerp : " . $_POST['onderwerp'] . "\n";
$message .= " " . $_POST[''] . "\n";
$message .= " Opgegeven bericht : " . $_POST['msg'] . "\n";
$message .= " " . $_POST[''] . "\n";
$message .= " Einde bericht " . $_POST[''] . "\n";
// SEND THE EMAIL TO YOU
mail($recipient, $subject, $message, $headers);
// REDIRECT TO THE THANKS PAGE
header("location: http://www.website.nl/bedankt.htm");
?>
Ik ben al een avondje aan het zoeken naar goede voorbeelden omtrent het verzenden van de keuze uit een keuzemenu maar het wil mij maar niet duidelijk worden hoe dit moet. Hopelijk wil iemand mij helpen, waarvoor mijn dank.
test het gewoon eens zelf door dit te plaatsen bovenaan: echo $_POST['onderwerp'];
je controleert het namelijk nergens in je script. mijn gok is dan ook dat deze gewoon leeg blijft.
je controleert het namelijk nergens in je script. mijn gok is dan ook dat deze gewoon leeg blijft.
Bedankt voor je reactie Thijs maar het is me al gelukt.
Ik heb in Dreamweaver bij Properties de keuze "List" aangevinkt i.p.v. "Menu", heb de values weggehaald en tot slot heb ik een paar veranderingen gemaakt in het formulier:
<TR>
<TD height="31" valign="top"><span class="style35">Onderwerp:</span></TD>
<td><select name="onderwerp" size="1" style="WIDTH: 270px; BACKGROUND-COLOR:#dddddd">
<option selected>---</option>
<option>Ik wil een bestelling doen</option>
<option>Ik heb een vraag over een bestelling</option>
<option>Ik heb een algemene vraag</option>
</select><tr>
Waarom het nu wel werkt weet ik niet :)
Ik heb in Dreamweaver bij Properties de keuze "List" aangevinkt i.p.v. "Menu", heb de values weggehaald en tot slot heb ik een paar veranderingen gemaakt in het formulier:
<TR>
<TD height="31" valign="top"><span class="style35">Onderwerp:</span></TD>
<td><select name="onderwerp" size="1" style="WIDTH: 270px; BACKGROUND-COLOR:#dddddd">
<option selected>---</option>
<option>Ik wil een bestelling doen</option>
<option>Ik heb een vraag over een bestelling</option>
<option>Ik heb een algemene vraag</option>
</select><tr>
Waarom het nu wel werkt weet ik niet :)
Denk dat de fout toch in dreamweaver zit hoor. Aangezien de structuur van een selectbox als volgt is:
<option value="WAARDE">Tekstuele waarde</option> kan eindeloos worden herhaald binnen de selectbox. Wil je de option als gekozen weer geven gebruik dan:
Code (php)
1
<select name="FIELD IDENTIFIER"><option value="WAARDE">Tekstuele waarde</option></select>
<option value="WAARDE">Tekstuele waarde</option> kan eindeloos worden herhaald binnen de selectbox. Wil je de option als gekozen weer geven gebruik dan:




