IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Echec à l'envoi d'e-mail


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de agnaou
    Inscrit en
    Février 2009
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2009
    Messages : 289
    Points : 99
    Points
    99
    Par défaut Echec à l'envoi d'e-mail
    bonjour a tous

    je fais mon script d'envoi d'email en remplaçant
    $email_webmaster = "webmaster@domaine.tld"; par:
    $email_webmaster = "mon email";
    mais ça ne parche pas : il s'affiche "Un problème s'est produit lors de l'envoi du message."
    sachant que dans mon php.ini j'ai :
    SMTP "localhost"
    smtp_port "25"
    voila mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    <?php 
    //  L'adresse email du webmaster, à laquelle les messages devront être envoyés
     $email_webmaster = "xxxxxxxxxxxx@xxxxxxxxxxxxxxxxxxx.com";
     // ============= traitement des données du formulaire =========================
    if (isset($_POST["envoyer"])){ 
    // le formulaire a été soumis
            $etat = "erreur"; 
    		// --- mise en forme des champs saisis dans le formulaire lors de sa soumission ---
            if (isset($_POST["email_expediteur"])) {
                     $_POST["email_expediteur"]=trim(stripslashes($_POST["email_expediteur"]));
            }
            if (isset($_POST["titre"])) {
                     $_POST["titre"]=trim(stripslashes($_POST["titre"]));
            }
            if (isset($_POST["message"])) {
                     $_POST["message"]=trim(stripslashes($_POST["message"]));
            }
     
    // --- test de la validité des champs saisis ---
     
                if (empty($_POST["titre"])) { 
    				 // Le Titre du message est vide
                     $erreur="Saisissez un titre pour vous message...";
            }elseif (empty($_POST["email_expediteur"])) { 
               // il manque l'email de l'expéditeur
                     $erreur="Saisissez votre adresse email...";
            } elseif (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$",
    		$_POST["email_expediteur"])){ 
                     // l'adresse e-mail n'est pas valide
                     $erreur="Votre adresse e-mail n'est pas valide...";
            }
            else if(empty($_POST["message"])) { 
               // le message est vide
                     $erreur="Saisissez un message...";
            }
    		else{
    		// --- tous les champs sont correctement remplis: on pourra envoyer le mail ---
                     $etat="ok";
           }
    }else { 
    // --- le formulaire n'a pas été soumis ---
               $etat="attente";
    }
    // === fin de traitement des données du formulaire ===============================
    if ($etat!="ok"){
    // Si le formulaire n'a pas été soumis, ou soumis avec une erreur
             if ($etat=="erreur"){
    //le formulaire a été soumis avec une erreur
                 echo '<p><strong><li><font color="#FF6600">'.$erreur.'</font></li></strong></p>'; 
             }
    ?><br><br>
    <table align="center"  border="1"  bordercolor="#FFCCFF" width="600" height="500">
    <th align="center" background="images/div_header.JPG" height="36"><font color="#FFFFFF"> Formulaire de Contact
    </font></th>  
    <form method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>">
    <tr><td> <table><tr><td align="center">Titre  du message : <input type="text" name="titre" 
    value="<?php
            if (!empty($_POST["titre"])) { 
    // le titre du message a été saisi: le réafficher
                    echo htmlspecialchars($_POST["titre"],ENT_QUOTES);
            }
            ?>"></td></tr><br>
     <tr><td align="center">&nbsp; &nbsp;&nbsp;Votre&nbsp;e-mail : <input type="sumbit" 
     name="email_expediteur" value="<?php
            if (!empty($_POST["email_expediteur"])) { 
    // l'adresse email de l'expéditeur a été saisie: la réafficher
                    echo htmlspecialchars($_POST["email_expediteur"],ENT_QUOTES);
            }
            ?> ">
     </td></tr>
      <tr><td align="center">Vous Commentaires<br /><br />&nbsp;&nbsp;&nbsp;
    <textarea name="message" cols="55" rows="15"><?php
            if (isset($_POST["message"])) { 
    // le message a été saisi: le réafficher
                    echo htmlspecialchars($_POST["message"],ENT_QUOTES);
            }
            ?></textarea></td></tr>
    <br>
    <tr><td align="center"><input type="submit"value="Envoyer"  name="envoyer"style="font-family:Verdana,serif; font-style:normal; font-weight:normal; font-size:12px; color:black; background-color:rgb(255,153,0); margin:1px; padding:1px; border-width:1px; border-color:black; border-style:groove;">
    <input type="reset" value="Effacer" style="font-family:Verdana,serif; font-style:normal; font-weight:normal; font-size:12px; color:black; background-color:rgb(255,153,0); margin:1px; padding:1px; border-width:1px; border-color:black; border-style:groove;"></td></tr></table></td></tr>
    </form></table><?php
    }
    else {
    // le formulaire a été soumis sans erreur, on envoie le mail
            $entete = "From: ".$_POST["email_expediteur"]." <".$_POST["email_expediteur"].">\n";
            $entete .= "MIME-Version: 1.0";
            if (@mail($email_webmaster,$_POST["titre"],$_POST["message"],$entete)){ 
    // mail envoyé
                    echo "Votre message a été envoyé.<br />\n";
                    echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Envoyer un autre message</a>\n";
            }
            else { 
    // erreur lors de l'envoi du mail
                    echo "Un problème s'est produit lors de l'envoi du message.\n";
                    echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Réessayez</a>\n";
            }
    }
    ?>
    et merci encore une fois

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Retire le @ devant mail() pour voir l'erreur retournée.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre régulier Avatar de agnaou
    Inscrit en
    Février 2009
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2009
    Messages : 289
    Points : 99
    Points
    99
    Par défaut
    merci our ta reponse mr
    et voici l'erreur retourné
    Warning: mail() [function.mail]: Failed to connect to mailserver at "loalhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in E:\ProActivia\formmail.php on line 349
    et merci ecore une fois.

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu as marqué locahost au lieu de localhost
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre régulier Avatar de agnaou
    Inscrit en
    Février 2009
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2009
    Messages : 289
    Points : 99
    Points
    99
    Par défaut
    merci pour ta reponse mr
    j'ai vérifié mon php.ini
    il configuré comme ca :
    SMTP = localhost
    smtp_port=25
    tout a fait c'est localhost et pas locahost
    et merci d'avance pour vous réponse

  6. #6
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Points : 7 503
    Points
    7 503
    Par défaut
    Warning: mail() [function.mail]: Failed to connect to mailserver at "loalhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in E:\ProActivia\formmail.php on line 349
    ça veut tout simpement dire que tu ne dispose pas de serveur smtp sur ton post local. Il te faut configurer cela avec un serveur permettant l'envoi de mail.

    d'où
    SMTP "localhost"
    smtp_port "25"
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

Discussions similaires

  1. Echec d'envoi d'un mail à partir de la servlet
    Par naruto_informaticien dans le forum Servlets/JSP
    Réponses: 15
    Dernier message: 29/06/2010, 17h39
  2. echec d'envoi de mail avec piece jointe
    Par thaundeadboss dans le forum Langage
    Réponses: 3
    Dernier message: 05/01/2010, 15h04
  3. echec d'envoie de mail en Bcc avec piece jointe
    Par islyoung2 dans le forum Langage
    Réponses: 1
    Dernier message: 30/07/2009, 09h53
  4. Réponses: 9
    Dernier message: 03/10/2008, 17h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo