email verzend niet?
form:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<form>
<p>Naam:<input type="text" name="T1" size="20"><br>
Email<input type="text" name="T2" size="20"><br>
Tekst<textarea rows="2" name="S1" cols="20"></textarea><br>
<input type="submit" value="Verzenden" name="B1"><input type="reset" value="Invoer wissen" name="B2"></p>
</form>
<?php
if ($_SERVER['REQUEST_METHOD'] == "POST") {
header("location: http://www.tg4a.nl.tt/testschool/verzend.php");
}
?>
<p>Naam:<input type="text" name="T1" size="20"><br>
Email<input type="text" name="T2" size="20"><br>
Tekst<textarea rows="2" name="S1" cols="20"></textarea><br>
<input type="submit" value="Verzenden" name="B1"><input type="reset" value="Invoer wissen" name="B2"></p>
</form>
<?php
if ($_SERVER['REQUEST_METHOD'] == "POST") {
header("location: http://www.tg4a.nl.tt/testschool/verzend.php");
}
?>
De verzend.php
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
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
<?php
$name = stripslashes($_POST["name"]);
$email = stripslashes($_POST["email"]);
$comments = stripslashes($_POST["comments"]);
if(isEmail($email)) // Merk op dat een 'goed' emailadres zowiezo nooit een [enter] of quote kan bevatten
{
$header = "From: \"" . protectMailHeaders($name) . "\" <" . $email . ">";
}
else // Fout afhandelen
{
exit("Ongeldig emailadres");
}
function protectMailHeaders($string)
{
$string = str_replace("", "", $string);
$string = str_replace("", "", $string);
$string = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $string)); // Slashes van quotes
return $string;
}
function isEmail($string)
{
$result = false;
if($string != "")
{
$expr = "/^([a-zA-Z0-9]){1,}(([a-zA-Z0-9\-_])|(([\.]){1,1}
-opmaakbreak-
([a-zA-Z0-9]){1,})){0,}([@]){1,1}([a-zA-Z0-9]){1,}
-opmaakbreak-
(([a-zA-Z0-9\-_])|(([\.]){1,1}([a-zA-Z0-9]){1,})){0,}
-opmaakbreak-
([\.]){1,1}([a-zA-Z0-9]){2,4}$/";
if(preg_match($expr, $string)) // voldoet aan expressie
{
$result = true;
}
}
return $result;
}
?>
<?php
// je email
$youremail = "[email protected]";
if ($email="" || $comments="" || $name="")
{
print ("Je moet alles invullen, ga terug alsjeblieft.");
}
// email verzenden
$headers = "Van: \"$_POST['name']\" $_POST['email']\n";
$subject = "Vraagje";
$message = 'Dit is de comment: '.$comment;
mail ("$youremail", "$subject", $message, $headers);
print ("Bedankt $name, je email is verzonden.");
}
?>
$name = stripslashes($_POST["name"]);
$email = stripslashes($_POST["email"]);
$comments = stripslashes($_POST["comments"]);
if(isEmail($email)) // Merk op dat een 'goed' emailadres zowiezo nooit een [enter] of quote kan bevatten
{
$header = "From: \"" . protectMailHeaders($name) . "\" <" . $email . ">";
}
else // Fout afhandelen
{
exit("Ongeldig emailadres");
}
function protectMailHeaders($string)
{
$string = str_replace("", "", $string);
$string = str_replace("", "", $string);
$string = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $string)); // Slashes van quotes
return $string;
}
function isEmail($string)
{
$result = false;
if($string != "")
{
$expr = "/^([a-zA-Z0-9]){1,}(([a-zA-Z0-9\-_])|(([\.]){1,1}
-opmaakbreak-
([a-zA-Z0-9]){1,})){0,}([@]){1,1}([a-zA-Z0-9]){1,}
-opmaakbreak-
(([a-zA-Z0-9\-_])|(([\.]){1,1}([a-zA-Z0-9]){1,})){0,}
-opmaakbreak-
([\.]){1,1}([a-zA-Z0-9]){2,4}$/";
if(preg_match($expr, $string)) // voldoet aan expressie
{
$result = true;
}
}
return $result;
}
?>
<?php
// je email
$youremail = "[email protected]";
if ($email="" || $comments="" || $name="")
{
print ("Je moet alles invullen, ga terug alsjeblieft.");
}
// email verzenden
$headers = "Van: \"$_POST['name']\" $_POST['email']\n";
$subject = "Vraagje";
$message = 'Dit is de comment: '.$comment;
mail ("$youremail", "$subject", $message, $headers);
print ("Bedankt $name, je email is verzonden.");
}
?>
En waar blijft de geposte data dan?
Zet dit bovenin je script.
Echter, alle data die in je post zit zal nu verloren zijn. Wat je dus moet doen is de action van je form naar verzend.php zetten of het emailen afhandelen in je eerste stukje script.
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /usr/export/www/vhosts/funnetwork/hosting/tg4a/testschool/verzenden.php on line 58
heb het veranderd maar werkt nog steeds niet:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?
return $result;
}
// je email
$_POST['youremail'] = "[email protected]";
if ($email="" || $comments="" || $name="")
{
print ("Je moet alles invullen, ga terug alsjeblieft.");
}
?>
return $result;
}
// je email
$_POST['youremail'] = "[email protected]";
if ($email="" || $comments="" || $name="")
{
print ("Je moet alles invullen, ga terug alsjeblieft.");
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Ruben Kok
Variabelen buiten quotes halen, dat wil nog wel eens helpen. Lees bijv deze tut eens:
http://phphulp.jorendewit.nl/view/39/