Mailformulier verzenden naar vast emailadres + bezoeker
Het formulier bevat een aantal persoonlijke gegevens van de bezoeker waaronder zijn mailadres.
Het formulier wordt gemailed naar een vast mailadres.
Graag hadden we dit zelfde formulier ook direct naar de bezoeker gestuurd als een soort bevestiging (copy)
Alleen weten we niet hoe we dit moeten aanpakken.
Kan iemand ons helpen. Hieronder de code
------
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
<?php
require_once('recaptchalib.php');
$privatekey = "0987968YGHJI9";
$resp = recaptcha_check_answer ($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
if (!$resp->is_valid) {
// What happens when the CAPTCHA was entered incorrectly
die ("De beveiligingscode is niet correct ingevuld. Ga terug naar de vorige pagina en probeer het nog een keer." .
"(reCAPTCHA said: " . $resp->error . ")");
} else {
// Your code here to handle a successful verification
}
?>
<?php
if(isset($_POST['email'])) {
// EDIT THE 2 LINES BELOW AS REQUIRED
$email_to = "[email protected]";
$email_subject = "Online bod op een veilingobject";
function died($error) {
// your error code can go here
echo "We are very sorry, but there were error(s) found with the form you submitted. ";
echo "These errors appear below.<br /><br />";
echo $error."<br /><br />";
echo "Please go back and fix these errors.<br /><br />";
die();
}
// validation expected data exists
if(!isset($_POST['first_name']) ||
!isset($_POST['last_name']) ||
!isset($_POST['lotnr']) ||
!isset($_POST['maxhamer']) ||
!isset($_POST['email']) ||
!isset($_POST['telephone']) ||
!isset($_POST['comments'])) {
died('Onze excuses, er lijkt een probleem te zijn met het biedingsformulier, probeer het nog een keer.');
}
$first_name = $_POST['first_name']; // required
$last_name = $_POST['last_name']; // required
$email_from = $_POST['email']; // required
$telephone = $_POST['telephone']; // not required
$comments = $_POST['comments']; // required
$lotnr = $_POST['lotnr']; // required
$maxhamer = $_POST['maxhamer']; // required
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email_from)) {
$error_message .= 'The Email Address you entered does not appear to be valid.<br />';
}
$string_exp = "/^[A-Za-z .'-]+$/";
if(!preg_match($string_exp,$first_name)) {
$error_message .= 'The First Name you entered does not appear to be valid.<br />';
}
if(strlen($comments) < 2) {
$error_message .= 'The Comments you entered do not appear to be valid.<br />';
}
if(strlen($error_message) > 0) {
died($error_message);
}
$email_message = "Form details below.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "Lotnr: ".clean_string($lotnr)."\n";
$email_message .= "Beschrijving + opmerkingen: ".clean_string($comments)."\n";
$email_message .= "Maximale hamerprijs: ".clean_string($maxhamer)."\n";
$email_message .= "Naam: ".clean_string($first_name)."\n";
$email_message .= "Adres: ".clean_string($last_name)."\n";
$email_message .= "Email: ".clean_string($email_from)."\n";
$email_message .= "Telefoon: ".clean_string($telephone)."\n";
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
?>
<!-- include your own success html here -->
<p>Wij danken U voor uw kooporder.</p>
<p>U krijgt kortelings een bevestigingsmail van zodra uw kooporder verwerkt is. </p>
<p>U wordt binnen 3 seconden terug naar de website gebracht. Indien niet, <a href="http://www.veilingenlucdebakker.be/welcome.php">klik hier</a>. </p>
<meta http-equiv="refresh" content="3;url=http://www.veilingenlucdebakker.be/welcome.php" />
<?php
}
?>
require_once('recaptchalib.php');
$privatekey = "0987968YGHJI9";
$resp = recaptcha_check_answer ($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
if (!$resp->is_valid) {
// What happens when the CAPTCHA was entered incorrectly
die ("De beveiligingscode is niet correct ingevuld. Ga terug naar de vorige pagina en probeer het nog een keer." .
"(reCAPTCHA said: " . $resp->error . ")");
} else {
// Your code here to handle a successful verification
}
?>
<?php
if(isset($_POST['email'])) {
// EDIT THE 2 LINES BELOW AS REQUIRED
$email_to = "[email protected]";
$email_subject = "Online bod op een veilingobject";
function died($error) {
// your error code can go here
echo "We are very sorry, but there were error(s) found with the form you submitted. ";
echo "These errors appear below.<br /><br />";
echo $error."<br /><br />";
echo "Please go back and fix these errors.<br /><br />";
die();
}
// validation expected data exists
if(!isset($_POST['first_name']) ||
!isset($_POST['last_name']) ||
!isset($_POST['lotnr']) ||
!isset($_POST['maxhamer']) ||
!isset($_POST['email']) ||
!isset($_POST['telephone']) ||
!isset($_POST['comments'])) {
died('Onze excuses, er lijkt een probleem te zijn met het biedingsformulier, probeer het nog een keer.');
}
$first_name = $_POST['first_name']; // required
$last_name = $_POST['last_name']; // required
$email_from = $_POST['email']; // required
$telephone = $_POST['telephone']; // not required
$comments = $_POST['comments']; // required
$lotnr = $_POST['lotnr']; // required
$maxhamer = $_POST['maxhamer']; // required
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email_from)) {
$error_message .= 'The Email Address you entered does not appear to be valid.<br />';
}
$string_exp = "/^[A-Za-z .'-]+$/";
if(!preg_match($string_exp,$first_name)) {
$error_message .= 'The First Name you entered does not appear to be valid.<br />';
}
if(strlen($comments) < 2) {
$error_message .= 'The Comments you entered do not appear to be valid.<br />';
}
if(strlen($error_message) > 0) {
died($error_message);
}
$email_message = "Form details below.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "Lotnr: ".clean_string($lotnr)."\n";
$email_message .= "Beschrijving + opmerkingen: ".clean_string($comments)."\n";
$email_message .= "Maximale hamerprijs: ".clean_string($maxhamer)."\n";
$email_message .= "Naam: ".clean_string($first_name)."\n";
$email_message .= "Adres: ".clean_string($last_name)."\n";
$email_message .= "Email: ".clean_string($email_from)."\n";
$email_message .= "Telefoon: ".clean_string($telephone)."\n";
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
?>
<!-- include your own success html here -->
<p>Wij danken U voor uw kooporder.</p>
<p>U krijgt kortelings een bevestigingsmail van zodra uw kooporder verwerkt is. </p>
<p>U wordt binnen 3 seconden terug naar de website gebracht. Indien niet, <a href="http://www.veilingenlucdebakker.be/welcome.php">klik hier</a>. </p>
<meta http-equiv="refresh" content="3;url=http://www.veilingenlucdebakker.be/welcome.php" />
<?php
}
?>
- Aar -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 27/01/2015 23:02:09 door - Ariën -
Dit om te voorkomen dat je formulier een gratis email-dienst wordt ;-)
Eigenlijk kan bovenstaande code gewoon aan de onderkant uitgebreid worden met een tweede email:
Code (php)
1
2
3
4
5
2
3
4
5
<?php
mail($email_from, 'contactformulier', 'Wij hebben uw bericht ontvangen. We zullen u zo spoedig mogelijk antwoorden.');
?>
mail($email_from, 'contactformulier', 'Wij hebben uw bericht ontvangen. We zullen u zo spoedig mogelijk antwoorden.');
?>
Bedankt voor je snelle reactie.
Ik heb jouw code onderaan erbij gezet. Het formulier komt aan op het statische adres, maar niet bij de bezoeker.
Ik heb deze als volgt erbij gezet, waarschijnlijk deed ik daar iets fout.
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
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
<?php
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
@mail($email_from, 'contactformulier', 'Wij hebben uw bericht ontvangen. We zullen u zo spoedig mogelijk antwoorden.');
?>
<!-- include your own success html here -->
<p>Wij danken U voor uw kooporder.</p>
<p>U krijgt kortelings een bevestigingsmail van zodra uw kooporder verwerkt is. </p>
<p>U wordt binnen 3 seconden terug naar de website gebracht. Indien niet, <a href="http://www.veilingenlucdebakker.be/welcome.php">klik hier</a>. </p>
<meta http-equiv="refresh" content="3;url=http://www.veilingenlucdebakker.be/welcome.php" />
<?php
}
?>
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
@mail($email_from, 'contactformulier', 'Wij hebben uw bericht ontvangen. We zullen u zo spoedig mogelijk antwoorden.');
?>
<!-- include your own success html here -->
<p>Wij danken U voor uw kooporder.</p>
<p>U krijgt kortelings een bevestigingsmail van zodra uw kooporder verwerkt is. </p>
<p>U wordt binnen 3 seconden terug naar de website gebracht. Indien niet, <a href="http://www.veilingenlucdebakker.be/welcome.php">klik hier</a>. </p>
<meta http-equiv="refresh" content="3;url=http://www.veilingenlucdebakker.be/welcome.php" />
<?php
}
?>
Gewijzigd op 27/01/2015 23:02:35 door - Ariën -
Nee lijkt me goed, maar natuurlijk wel even een ander mailadres opgeven bij het invullen van het formulier. Anders komen ze beiden op het zelfde mailadres aan inderdaad.
Ik raad aan om de mails met de juiste headers te sturen:
http://phpwiki.santhe.nl/index.php?title=De_juiste_mailheaders
Frank Nietbelangrijk op 27/01/2015 23:03:01:
Nee lijkt me goed, maar natuurlijk wel even een ander mailadres opgeven bij het invullen van het formulier. Anders komen ze beiden op het zelfde mailadres aan inderdaad.
Heb het nogmaals een aantal keren geprobeerd. Het mailadres dat vast in de phpcode staat werkt. Email komt daar toe. Het adres dat ik invul in het formulier is inderdaad een ander adres.
Hier ontvang ik helaas geen mail. Ergens doe ik iets fout denk ik.
Doe anders even
onder of boven de mail() regels. Krijg je dan het mailadres te zien?
Test je dit bij je provider of op je eigen pc?
Provider: wordt de mail() functie wel ondersteund?
Thuis: Onder windows werkt de mail() functie niet.
Haal die @ voor je mail()-functie eens weg. je wilt juist geen foutmeldingen onderdrukken.
Het formulier werkt!
Ik heb de @ verwijdert en enkele tests gedaan. Mail wordt mooi verstuurd naar de afzender en naar het vaste mailadres. (enkel mn eigen mailadres doet blijkbaar moeilijk, is een gmail)
Alvast bedankt voor jullie hulp en expertise !!
Groet
Goezi
Zo te zien is de From nog niet correct.
Hoe bedoel je dat de From nog niet correct is?
(Ben helemaal geen ontwikkelaar of programmeur, probeer met jullie hulp een formulier werkende te krijgen).
Nu komt er bij in de mail van de bezoeker een bevestigingsmail die afkomstig is van een zekere postmaster.
http://phpwiki.santhe.nl/index.php?title=De_juiste_mailheaders
Dat is een voorbeeld van een script waar je gemakkelijk mee zou kunnen mailen.
Zoals al meerdere keren is gemeld kan je even kijken naar Dat is een voorbeeld van een script waar je gemakkelijk mee zou kunnen mailen.