Contact form mails worden als spam gezien
zijn er eventueel punten wat ik nog kan verbeteren?
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
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
<?php
if (isset($_POST['email'])){
// here is the email to information
$email_to="[email protected]";
$email_subject= "Contact";
$email_from = "[email protected]";
// error code
function died($error){
echo "U heeft niet alle velden correct ingevuld. Ga alstublieft terug en probeer opnieuw. \n \n";
echo $error. "\n";
die();
}
// validation
if(!isset($_POST['name']) ||
!isset($_POST['lastname']) ||
!isset($_POST['telephone']) ||
!isset($_POST['email']) ||
!isset($_POST['comments'])){
died('Het spijt ons er is iets verkeerds gegaan met het versturen van uw E-mail.');
}
$name = $_POST['name'];
$lastname = $_POST['lastname'];
$telephone = $_POST['telephone'];
$email = $_POST['email'];
$comments = $_POST['comments'];
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp, $email)){
$error_message .= 'Uw e-mail adres is niet correct ingevoerd.<br/>';
}
$string_exp = "[0-9]+$/";
if(!preg_match($string_exp, $phone)){
$error_message .= 'Telefoonnummer wat u heeft opgegeven bevat te weinig cijfers.<br/>';
}
if(strlen($telephone) <2){
$error_message .= 'Dit is geen geldige telefoonnummer.<br/>';
}
if(strlen($comments) <2){
$error_message .= 'De opmerkingen die u heeft ingevoerd, blijken ongeldig te zijn.<br/>';
}
if(strlen($error_message)>0){
died($error_message);
}
$email_message = "Reparatie en Onderhoud" . "\n\n";
function clean_string($string){
$bad = array("content-type", "bcc", "to", "cc", "href");
return str_replace($bad, "", $string);
}
$email_message .= "Naam: " . clean_string($name) . "\n";
$email_message .= "Achternaam: " . clean_string($lastname) . "\n";
$email_message .= "Telefoonnummer: " . clean_string($telephone) . "\n";
$email_message .= "E-Mail: " . clean_string($email) . "\n \n \n";
$email_message .= "Contact formulier" . "\n\n";
$email_message .= "Vragen : \n" . clean_string($comments) . "\n";
// create email headers
$headers = 'From:' .$email_from . "\r\n". 'Reply-To:' . $email. "\r\n" . 'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message,$headers);
?>
<!-- siccess message goed here-->
<center>
<p><img src="../img/logo/logo200x200.png" width="200" height="200" /></p>
<p>Bedankt voor het verzenden van uw e-mail. Wij proberen zo snel mogelijk contact met u op te nemen.<br/>
<a href="index.html">Klik hier</a> om verder te gaan op onze website. </p>
</center>
<?php
}
?>
if (isset($_POST['email'])){
// here is the email to information
$email_to="[email protected]";
$email_subject= "Contact";
$email_from = "[email protected]";
// error code
function died($error){
echo "U heeft niet alle velden correct ingevuld. Ga alstublieft terug en probeer opnieuw. \n \n";
echo $error. "\n";
die();
}
// validation
if(!isset($_POST['name']) ||
!isset($_POST['lastname']) ||
!isset($_POST['telephone']) ||
!isset($_POST['email']) ||
!isset($_POST['comments'])){
died('Het spijt ons er is iets verkeerds gegaan met het versturen van uw E-mail.');
}
$name = $_POST['name'];
$lastname = $_POST['lastname'];
$telephone = $_POST['telephone'];
$email = $_POST['email'];
$comments = $_POST['comments'];
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp, $email)){
$error_message .= 'Uw e-mail adres is niet correct ingevoerd.<br/>';
}
$string_exp = "[0-9]+$/";
if(!preg_match($string_exp, $phone)){
$error_message .= 'Telefoonnummer wat u heeft opgegeven bevat te weinig cijfers.<br/>';
}
if(strlen($telephone) <2){
$error_message .= 'Dit is geen geldige telefoonnummer.<br/>';
}
if(strlen($comments) <2){
$error_message .= 'De opmerkingen die u heeft ingevoerd, blijken ongeldig te zijn.<br/>';
}
if(strlen($error_message)>0){
died($error_message);
}
$email_message = "Reparatie en Onderhoud" . "\n\n";
function clean_string($string){
$bad = array("content-type", "bcc", "to", "cc", "href");
return str_replace($bad, "", $string);
}
$email_message .= "Naam: " . clean_string($name) . "\n";
$email_message .= "Achternaam: " . clean_string($lastname) . "\n";
$email_message .= "Telefoonnummer: " . clean_string($telephone) . "\n";
$email_message .= "E-Mail: " . clean_string($email) . "\n \n \n";
$email_message .= "Contact formulier" . "\n\n";
$email_message .= "Vragen : \n" . clean_string($comments) . "\n";
// create email headers
$headers = 'From:' .$email_from . "\r\n". 'Reply-To:' . $email. "\r\n" . 'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message,$headers);
?>
<!-- siccess message goed here-->
<center>
<p><img src="../img/logo/logo200x200.png" width="200" height="200" /></p>
<p>Bedankt voor het verzenden van uw e-mail. Wij proberen zo snel mogelijk contact met u op te nemen.<br/>
<a href="index.html">Klik hier</a> om verder te gaan op onze website. </p>
</center>
<?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 22/08/2014 12:45:30 door - Ariën -
Probeer eens dit te gebruiken:
http://phpwiki.santhe.nl/index.php?title=De_juiste_mailheaders
Zorg er tevens voor dat je geen foutmeldingen onderdrukt met de @.
Gewijzigd op 22/08/2014 13:12:03 door Bas IJzelendoorn
Email: .travel bestaat al jaaaren en voldoet niet. Nog los van alle nieuwe tlds als .academic etc.
Telefoon: als er iets anders dan cijfers in het nummer staat ( een spatie, - of + misschien) dan is het te kort?
Als er minder dan 2 cijfers zijn, dan is het niet geldig. 3 cijfers voldoet wel?
is het trouwens $telephone of $phone?
Cleanstring().
Leuk, maar weinig effectief: 'Succes toewensen' wordt 'Sues ewensen'
Maar dat alleen in de body van de mail
Op regel 74 knal je wel onbeschermd de user invoer de headers van je mail in
Daarbij zou ik liever hebben dat er zeker geen html in de body staar