Hoe keuze menu/list verzenden via contactform?
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.
je controleert het namelijk nergens in je script. mijn gok is dan ook dat deze gewoon leeg blijft.
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 :)
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: