OVH Community, votre nouvel espace communautaire.

Problème d'envois de mail via formulaire de contact


Nowwhat
18/05/2012, 01h17
Je repris ton fichier "test.php" - et après quelques modifications ça marche:

Code PHP:

$hasError 
false;
$emailSent false;

//If the form is submitted
if(isset($_POST['submit'])) {

    
//Check to make sure that the name field is not empty
    
if(trim($_POST['contactname']) == '') {
        
$hasError true;
    } else {
        
$name trim($_POST['contactname']);
    }

    
//Check to make sure that the subject field is not empty
    
if(trim($_POST['subject']) == '') {
        
$hasError true;
    } else {
        
$subject trim($_POST['subject']);
    }

    
//Check to make sure sure that a valid email address is submitted
    
if(trim($_POST['email']) == '')  {
        
$hasError true;
    } else if (!
preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i"trim($_POST['email']))) {
        
$hasError true;
    } else {
        
$email trim($_POST['email']);
    }

    
//Check to make sure comments were entered
    
if(trim($_POST['message']) == '') {
        
$hasError true;
    } else {
        if(
function_exists('stripslashes')) {
            
$comments stripslashes(trim($_POST['message']));
        } else {
            
$comments trim($_POST['message']);
        }
    }

    
//If there is no error, send the email
    
if(!$hasError) {
        
$emailTo "ton-mail@ton-site.tld";
        
$body "Name: $name\n\nEmail: $email\n\nSubject: $subject\n\nComments:\n$comments";
        
$headers "From: Site de l'APE $emailTo\nReply-To: $email";
        
mail($emailTo$subject$body$headers);
        
$emailSent true;
    }
}
?>

    echo $_SERVER['PHP_SELF']; ?>">
        

            Prénom et nom :
            
        


        

            Email :
            
        


        

            Sujet :
            
        


        

            Message :
            
        

        
    

if($hasError) { //If errors are found
        
echo "

Merci de vérifier que tous les champs ont été correctement remplis.

"
;
    }
?>

if($emailSent) { //If email is sent
        
echo "

Votre email a été envoyé avec succès.

"
;
        echo 
"

Merci $name d'avoir utilisé notre formulaire de contact.


        

Votre message a été envoyé avec succès et nous vous contacteront très prochainement.
        Vous pouvez continuer votre navigation sur notre site !

"
;
    }
?>

Gaston_Phone
17/05/2012, 20h17
Et est-il arrivé ?

Hoppy
17/05/2012, 19h35
Voilà le résultat du script :
*** CR_Mail=1 - Mail envoyé

Gaston_Phone
17/05/2012, 19h25
Peux-tu essayer ce petit script :

Code PHP:
   // Test fonction mail();

   // *** A configurer

   
$to    "Adresse_Mail_Destinataire";  
   
$from  "Adresse_Mail_Contact_site";  // adresse MAIL OVH liée à ton hébergement.

   // *** Laisser tel quel

   
$JOUR  date("Y-m-d");
   
$HEURE date("H:i");

   
$Subject "Test Mail - $JOUR $HEURE";

   
$mail_Data "";
   
$mail_Data .= " \n";
   
$mail_Data .= " \n";
   
$mail_Data .= " Subject  \n";
   
$mail_Data .= " \n";
   
$mail_Data .= " \n";

   
$mail_Data .= "Mail HTML simple  :  $Subject    
 \n"
;
   
$mail_Data .= "
 \n"
;
   
$mail_Data .= "bla bla bla bla 
 \n"
;
   
$mail_Data .= "Etc.
 \n"
;
   
$mail_Data .= " \n";
   
$mail_Data .= " \n";

   
$headers  "MIME-Version: 1.0 \n";
   
$headers .= "Content-type: text/html; charset=iso-8859-1 \n";
   
$headers .= "From: $from  \n";
   
$headers .= "Disposition-Notification-To: $from  \n";

   
// Message de Priorité haute
   // -------------------------
   
$headers .= "X-Priority: 1  \n";
   
$headers .= "X-MSMail-Priority: High \n";

   
$CR_Mail TRUE;

   
$CR_Mail = @mail ($to$Subject$mail_Data$headers);
 
   if (
$CR_Mail === FALSE)   echo " ### CR_Mail=$CR_Mail - Erreur envoi mail 
 \n"
;
   else                      echo 
" *** CR_Mail=$CR_Mail - Mail envoyé
 \n"

Vous trouverez des compléments d'informations sur :
http://a-pellegrini.developpez.com/tutoriels/php/mail/
http://www.siteduzero.com/tutoriel-3...il-en-php.html (Envoi de MAIL avec Pièce-Jointe)

Hoppy
17/05/2012, 19h25
Si mon message n'est pas au bon endroit, est-ce qu'un modérateur peut le déplacer ??

D'avance merci et toutes mes excuses pour cette erreur.

Nowwhat
17/05/2012, 19h11


Un vrai How-to propose aussi la solution ....

Hoppy
17/05/2012, 18h48
Bonjour à tous,

Je planche depuis plusieurs heures sur ce formulaire qui ne fonctionne pas.
Je m'explique : le formulaire fonctionne normalement, me confirme l'envoi du mail mais je ne reçois rien, quelque soit le mail utilisé.
Du coté D'OVH, les suivi d'emails auto sont activé et ne remonte pas d'erreur.

Voici le code, si par hasard vous trouviez quelque chose d’incohérent dedans :
Code:






" . "\n" . "Reply-To: " . $email; mail($emailTo, $subject, $body, $headers); $emailSent = true; } } ?>

Merci de vérifier que tous les champs ont été correctement remplis.

Votre email a été envoyé avec succès

Merci d'avoir utilisé notre formulaire de contact.

Votre message a été envoyé avec succès et nous vous contacteront très prochainement.

Vous pouvez continuer votre navigation sur notre site !

d'avance merci à tous !