2016-10-15 1 views
0

J'ai mis en place un simple formulaire de contact PHP sur mon site. Lorsque je soumets le message son dit message envoyé. Mais je ne reçois pas l'email.Formulaire de contact PHP ne pas envoyer d'e-mail même après avoir dit e-mail envoyé

Le code J'utilise est inférieur

<?php 
    $action=$_REQUEST['action']; 

    if ($action=="") /* display the contact form */ 
    { 
?> 

<form action="" method="post" enctype="multipart/form-data"> 
    <input type="hidden" name="action" value="submit"> 
    <div class="field half first"> 
     <label for="name">Name</label> 
     <input name="name" id="name" type="text" placeholder="Name"> 
    </div> 
    <div class="field half"> 
     <label for="email">Email</label> 
     <input name="email" id="email" type="email" placeholder="Email"> 
    </div> 
    <div class="field"> 
     <label for="message">Message</label> 
     <textarea name="message" id="message" rows="6" placeholder="Message"></textarea> 
    </div> 
    <ul class="actions"> 
     <li><input value="Send email" class="button alt" type="submit"></li> 
    </ul> 
</form> 

<?php 
    } 
    else /* send the submitted data */ 
    { 
     $name=$_REQUEST['name']; 
     $email=$_REQUEST['email']; 
     $message=$_REQUEST['message']; 

     if (($name=="")||($email=="")||($message=="")) 
     { 
      echo "All fields are required, please fill <a href=\"\">the form</a> again."; 
     } 
     else{  
      $from="From: $name<$email>\r\nReturn-path: $email"; 
      $subject="Message sent using your contact form"; 
      mail("[email protected]", $subject, $message, $from); 
      echo "Email sent!"; 
     } 
    } 
?> 

Les enregistrements MX sont définis pour les applications Google, cela aurait quelque chose à voir avec la raison pour laquelle l'e-mail n'est pas envoyé?

+0

votre juste écho à la "Courriel envoyé" après email envoyé signifie fonction mail dose't. alors faites quelque chose comme ça et vérifiez si (mail ("[email protected]", $ sujet, $ message, $ from)) {echo "Email envoyé!"; } else {echo "email non envoyé"; } – JYoThI

+0

Son déjà hébergé sur godaddy, j'ai essayé ce que vous avez demandé, il dit encore email envoyé, mais je n'ai rien reçu. – user2240778

Répondre

0

Votre code me semble bien.

Si vous faites cela sur localhost, il se peut que l'adresse à laquelle vous envoyez votre courrier le rejette car SMTP n'est pas correctement configuré.

Essayez de télécharger ceci vers un serveur distant si c'est le cas. Ou configurez SMTP sur votre ordinateur.

+0

Peut-être qu'il ne supporte pas le courrier? Essayez php_info() ou phpinfo() je ne retiens pas le nom exact de la fonction et je recherche le mail –

0

Je l'ai fixé, il est une question GoDaddy, la MX entrée >> routage de courrier doit être réglé sur

à distance.

enter image description here