Contact form mails worden als spam gezien

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Enrico van der List

Enrico van der List

22/08/2014 12:39:45
Quote Anchor link
Ik wil een contact formulier gaan maken en ik heb wel eens een goed werkend contactformulier gemaakt maar merk dat deze nog niet helemaal lekker werkt. Alleen komen alle mailtjes wel continu in mijn spam box.
zijn er eventueel punten wat ik nog kan verbeteren?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?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!
Gewijzigd op 22/08/2014 12:45:30 door - Ariën -
 
PHP hulp

PHP hulp

26/04/2024 02:09:51
 
- Ariën  -
Beheerder

- Ariën -

22/08/2014 12:47:55
Quote Anchor link
Ik heb je titel even verduidelijkt gezien 'contactform' als titel niets zegt over je vraag of probleemstelling. Gelieve hier in het vervolg rekening mee te houden.

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 @.
 
Bas IJzelendoorn

Bas IJzelendoorn

22/08/2014 13:11:44
Quote Anchor link
Wat mogelijk nog beter is, is om gebruik te maken van bijvoorbeeld phpmailer of swiftmailer.
Gewijzigd op 22/08/2014 13:12:03 door Bas IJzelendoorn
 
Ivo P

Ivo P

22/08/2014 14:50:28
Quote Anchor link
Los daarvan klopt die validatie ook niet echt.

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
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.