formhandler
-----------------------------------------------------------------------------------------------
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
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
<?php
$form_error = false;
if (isset($_POST['Name'])) {
// information can also be placed in database
$Name = $_POST['Name'];
$Surename = $_POST['Surename'];
$Email = $_POST['Email'];
$Comments = $_POST['Comments'];
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: ' . $Email . "\r\n";
if (@mail('[email protected]','information coming from Form3.htm','Name: '.$Name.'<br>Surname: '.$Surename.'<br>Comments: '.$Comments,$headers)) {
header('Location: http://www.userexample.com/Thank_you_message3.html');
} else {
$form_error = true;
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>FormHandler3</title>
</head>
<body>
<?php
if($form_error){echo '<p>Sorry, something went wrong with the form, please try again later.</p>';}
?>
</body>
</html>
$form_error = false;
if (isset($_POST['Name'])) {
// information can also be placed in database
$Name = $_POST['Name'];
$Surename = $_POST['Surename'];
$Email = $_POST['Email'];
$Comments = $_POST['Comments'];
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: ' . $Email . "\r\n";
if (@mail('[email protected]','information coming from Form3.htm','Name: '.$Name.'<br>Surname: '.$Surename.'<br>Comments: '.$Comments,$headers)) {
header('Location: http://www.userexample.com/Thank_you_message3.html');
} else {
$form_error = true;
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>FormHandler3</title>
</head>
<body>
<?php
if($form_error){echo '<p>Sorry, something went wrong with the form, please try again later.</p>';}
?>
</body>
</html>
Edit:
De code om code=tags geplaatst voor een beter leesbaar resultaat.
Gelieve dit in het vervolg zelf te doen. Alvast bedankt.
Gelieve dit in het vervolg zelf te doen. Alvast bedankt.
Gewijzigd op 02/08/2013 11:40:55 door - Ariën -
Daarnaast nog wat tips om je script te verbeteren:
- Gebruik if ($_SERVER['REQUEST_METHOD'] === 'POST') om te kijken of een formulier gepost is.
- regel 6 t/m 9 zijn onnodig en kosten alleen geheugen
- kijk even naar de juiste mailheaders. Hierdoor komt de mail niet in je spam box (lost mogelijk ook je probleem op). Kijk ook eens naar PHPMailer of SwiftMailer voor de echte goede mail tools.
- (voor op dit forum, gebruik [code] tags om al je code in een code block te krijgen)
Ik heb nu dus ook ontdekt dat de reactie inderdaad in mijn spam box van het nieuwe email adres terecht is gekomen. Vandaar dat ik dacht het niet werkte!
Bedoe; je dit:
if (@mail('[email protected]
Veranderen in:
if ($_SERVER['REQUEST_METHOD'] === 'POST')('[email protected]?
of:
if ($_SERVER['REQUEST_METHOD'] === 'POST') er gewoon bij plaatsen?
Toevoeging op 02/08/2013 07:48:44:
Goedemorgen,
Ik heb regel 6 t/m 9 verwijderd maar dan krijg ik geen berichten meer van afzender en uit de comment box.
Email adres kan nog steeds niet veranderd? Ik dacht eerst van welomdat het om-en-om in de spambox kwam maar dat is niet zo.
Iemand nog een idee wat er mis gaat?
Dank al vast.
Wat ik ook doe het blijft maar op een email adres reageren? Heeft iemand een clou?
Danke!
Plaats je volledige code eens tussen de tags.. Dus zoals je hem nu heb..
Chris Niese op 05/08/2013 07:08:29:
Wat ik ook doe het blijft maar op een email adres reageren?
Wat bedoel je hier precies mee?
Inderdaad SanThe, ik snap er ook niets meer van.. Vandaar de vraag om de volledige code, misschien dat we het dan wel snappen!
[email protected]','information coming from Form3.htm','Name: '.$Name.'<br>Surname: '.$Surename.'<br>Comments: '.$Comments,$headers)) { )
De reactie naar dit bovenstaand email adres is het enige email adres waar de formhandler op reageerd?
De "Thank you message.htm" werkt wel maar er wordt geen info (comments etc.) naar het email adres gestuurd
Kan het email ades wel veranderen maar dan werkt het:
"if @mail('[email protected]'," niet?
Kun je het nog volgen?
( if (@mail('De reactie naar dit bovenstaand email adres is het enige email adres waar de formhandler op reageerd?
De "Thank you message.htm" werkt wel maar er wordt geen info (comments etc.) naar het email adres gestuurd
Kan het email ades wel veranderen maar dan werkt het:
"if @mail('[email protected]'," niet?
Kun je het nog volgen?
[email protected] veranderd in jouw e-mail adres, komtie niet aan?
dus als je Zie de opmerkingen van Wouter J (02/08/2013 01:09:55)
Kan uit je reactie niet opmaken of je het nu wel/niet aangepast hebt.
Hierboven wordt er al naar gevraagd: wat is dan nu de code?
Daarnaast zou ik de mailfunctie niet gebruiken maar overstappen op phmailer of swiftmailer.
Op het gegeven email adres komt de ingevulde data van form3.htm binnen.
Toevoeging op 06/08/2013 09:23:51:
Sorry en bedankt.
Hieronder de form3 code behorende bij de Fornhandler.
<form action="formhandler3.php" method="post" style="text-align: center">
Name:
<input name="Name" type="text" size="30" maxlength="80">
Surename:
<input name="Surename" type="text" size="30" maxlength="80">
Email:
<input name="Email" type="text" size="30" maxlength="80">
Comments:
<textarea name="Comments" style="width: 250; height: 81;" rows="5" cols="40"></textarea>
<input name="Submit" type="submit">
</form>