gegevens formulier verzenden met keuze uit option
Wat ik nu heb is dit:
<form name="form1" method="post" action="post.php">
Naam: <br><input name="naam" type="text" value""><br>
E-mail: <br><input name="email" type="text" value=""><br><br>
<select name=\"activiteit\">
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php include("connectie.php");
$query="SELECT activiteit FROM tabel WHERE rubriek='Op de planken'";
$result = mysql_query($query);
while(list($activiteit)=mysql_fetch_row($result))
{
echo("<option name=\"activiteit\" value=\"$activiteit\">$activiteit\n</option>");
}
echo("
</select>");
echo("<input type=\"submit\" name=\"Submit\" value=\"Verzenden\">");?>
$query="SELECT activiteit FROM tabel WHERE rubriek='Op de planken'";
$result = mysql_query($query);
while(list($activiteit)=mysql_fetch_row($result))
{
echo("<option name=\"activiteit\" value=\"$activiteit\">$activiteit\n</option>");
}
echo("
</select>");
echo("<input type=\"submit\" name=\"Submit\" value=\"Verzenden\">");?>
</form>
Post.php verzend de naam en emailadres, maar NIET de activiteit(naam).
Kan iemand me misschien een hint geven?
Gewijzigd op 01/11/2011 11:46:58 door Anja Olsthoorn
En wat is je probleem, en waar loop je op vast?
Het is het verzenden van de keuzen uit (optin) activiteit.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<form name="form1" method="post" action="post.php">
Naam: <br><input name="naam" type="text" value""> </ br>
E-mail: <br><input name="email" type="text" value="">< /br>
<select name="activiteit">
<?php include("connectie.php");
$query="SELECT activiteit FROM tabel WHERE rubriek='Op de planken'";
$result = mysql_query($query);
if($result) {
while(list($activiteit)=mysql_fetch_row($result)) {
echo '<option name="activiteit" value="'.$activiteit.'">'.$activiteit.'</option>';
}
} else {
echo "Er is een fout opgetreden bij ons: ".mysql_error();
}
?>
</select>
<input type="submit" name="Submit" value="Verzenden">
</form>
Naam: <br><input name="naam" type="text" value""> </ br>
E-mail: <br><input name="email" type="text" value="">< /br>
<select name="activiteit">
<?php include("connectie.php");
$query="SELECT activiteit FROM tabel WHERE rubriek='Op de planken'";
$result = mysql_query($query);
if($result) {
while(list($activiteit)=mysql_fetch_row($result)) {
echo '<option name="activiteit" value="'.$activiteit.'">'.$activiteit.'</option>';
}
} else {
echo "Er is een fout opgetreden bij ons: ".mysql_error();
}
?>
</select>
<input type="submit" name="Submit" value="Verzenden">
</form>
En wat doet post.php dan?
Gewijzigd op 01/11/2011 12:11:37 door - Ariën -
Ik krijg een parse error op regel 12?
Laat post.php dan eens zien.
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<html>
<head><title>Mailform</title></head>
<body>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
if (!isset($_POST['naam']) || !isset($_POST['email']) || !isset($_POST['activiteit'])) {
echo 'U heeft niet alle velden ingevuld!';
exit;
}
$naam = htmlspecialchars($_POST['naam']);
$email = htmlspecialchars($_POST['email']);
$activiteit = htmlspecialchars($_POST['activiteit']);
$tijd = time();
$datum = strftime('%d/%m/%y %H:%M', $tijd);
$ip = getenv('REMOTE_ADDR');
$message = $naam.' met het e-mailadres '.$email.' en het IP '.$ip.' stuurde op '.$datum.' het volgende bericht:
____________________________________
'.$activiteit.'
------------------------------------';
mail('[email protected]', 'Bericht', $message, 'From: '.$email);
echo 'Uw bericht is verzonden. U krijgt zo snel mogelijk antwoord.';
?>
if (!isset($_POST['naam']) || !isset($_POST['email']) || !isset($_POST['activiteit'])) {
echo 'U heeft niet alle velden ingevuld!';
exit;
}
$naam = htmlspecialchars($_POST['naam']);
$email = htmlspecialchars($_POST['email']);
$activiteit = htmlspecialchars($_POST['activiteit']);
$tijd = time();
$datum = strftime('%d/%m/%y %H:%M', $tijd);
$ip = getenv('REMOTE_ADDR');
$message = $naam.' met het e-mailadres '.$email.' en het IP '.$ip.' stuurde op '.$datum.' het volgende bericht:
____________________________________
'.$activiteit.'
------------------------------------';
mail('[email protected]', 'Bericht', $message, 'From: '.$email);
echo 'Uw bericht is verzonden. U krijgt zo snel mogelijk antwoord.';
?>
</body>
</html>
Gewijzigd op 01/11/2011 12:22:26 door Anja Olsthoorn
- Verder raad ik een controle aan op mail met if-else.
- Een script als phpMailer kan ik aanraden als je wilt gaan mailen, dit werkt makkelijker en is veiliger.
Verder kan ik geen parse-error ontdekken, in welk bestand zit die dan volgens jouw?
In het bestelformulier. Ik zal even kijken naar phpMailer, maar ik heb dat volgens mij al geprobeerd en kan daarin geen option selectie uit een msqtabel verwerkt krijgen.
Een <option> heeft geen name. De name staat in <select>.
<option value=..........