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 :

Problem envoi du formulaire


Sujet :

Langage PHP

  1. #1
    Membre très actif
    Inscrit en
    Juin 2008
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 131
    Par défaut Problem envoi du formulaire
    salut,
    Voici mon code HTML:
    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
      <form id="contacts" method="post" action="envoyer.php">
                                <fieldset>
                                    <input tabindex="1" type="text" id="nom" name="nom" value="Name" onfocus="if (this.value=='Name') this.value='';" onblur="if (this.value=='') this.value='Name';" class="text name" />
                                    <br />
     
                                    <input tabindex="3" type="text" id="email" name="email" value="E-mail" onfocus="if (this.value=='E-mail') this.value='';" onblur="if (this.value=='') this.value='E-mail';" class="text mail" />
                                    <br />
     
                                    <textarea tabindex="4" id="message" name="message" cols="30" rows="3" onfocus="if (this.value=='Message') this.value='';" onblur="if (this.value=='') this.value='Message';" class="text message">Message</textarea>
                                    <br />
     
                                	<input class="button" name="Send" value="Send e-mail" type="submit" />
     
                            	</fieldset>
                            </form>
    E voila le code PHP:
    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
    if(isset($_POST['nom']) && isset($_POST['email']) && isset($_POST['message']) )
    {
       extract($_POST);
       if(!empty($nom) && !empty($email) && !empty($message) )
       {
    	$message=str_replace("\'","'",$message);
    	$destinataire="kaouach.ahmed@gmail.com";
    	$sujet="Some one used the contact card on chlebta.com";
    	$message="voici Le contenu de message \n
    		Nom : $nom \n
    		Email: $email \n
    		Message: $message";
    	$entete="From: $nom \n Reply-To: $email";
    	$envoi=mail($destinataire,$sujet,$message,$entete);
    	echo "<div class=\"error\">Have been some problems sending the email.</div>";
       }
       else
    	echo "<div class=\"success\">The email has been sent successfully.</div>";
    }
    ?>
    I m'affiche que le message a été bien envoyer mais j'ai ne reçois pas le message dans ma boite mail. je vérifier mon adresse mail elle est correcte.

  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
    Par défaut
    Il y a de multiples raisons pour que ca ne fonctionne pas.
    Est-ce que tu as essayé d'autres emails ?
    Est-ce que tu peux controler ce qui se passe sur le serveur SMTP ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre très actif
    Inscrit en
    Juin 2008
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 131
    Par défaut
    oui, je suis sur que c'est un problème dû au formulaire svp passe moi un autre formulaire pour que je le teste, c pas moi qui a écrit ce code je ne suis pas assez bien en php

  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
    Par défaut
    Des codes d'envoi de mail en PHP, il y en a plein le net et il y en a aussi dans les tutoriaux de developpez.net
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonjour,

    Ton algo aussi n'est pas bon, s'il l'un des trois champs est vide, ça affichera
    echo "<div class=\"success\">The email has been sent successfully.</div>";


    Ce que tu dois faire c'est que testé la valeur de $envoi, si c'est true, le mail est bien envoyé.

    A+.

  6. #6
    Membre très actif
    Inscrit en
    Juin 2008
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 131
    Par défaut
    bon j'ai modifier mon code un peu me sa fonctionne pas encore
    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
    <?php
    if(isset($_POST['nom']) && isset($_POST['email']) && isset($_POST['message']) )
    {
       extract($_POST);
       if(!empty($nom) && !empty($email) && !empty($message) )
       {
    	$message=str_replace("\'","'",$message);
    	$destinataire="kaouach.ahmed@gmail.com";
    	$sujet="Some one used the contact card on chlebta.com";
    	$message="This is the message \n
    		Nom : $nom \n
    		Email: $email \n
    		Message: $message";
    	$entete="From: $nom \n Reply-To: $email";
    	$envoi=mail($destinataire,$sujet,$message,$entete);
    	if($envoi) 
    	  echo "<div class=\"success\">The email has been sent successfully.</div>";
    	else 
    	 echo "<div class=\"error\">Have been some problems sending the email.</div>";
        }
    	else
         echo "<div class=\"error\">Some Information are missing.</div>";
    }
    ?>

  7. #7
    Membre éprouvé Avatar de Pierrot2Mars
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2010
    Messages : 79
    Par défaut
    Essaye de remplacer tous tes "\n" par des "\r\n"

  8. #8
    Membre très actif
    Inscrit en
    Juin 2008
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 131
    Par défaut
    Bon voici un autre code php que je trouve :
    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
    <?php
    include_once("config.php");
    //------------------------------------------------------------------------------------------------
    // RECUPERO IL VALORE DI TUTTI I DATI INVIATI DALL'UTENTE
    //------------------------------------------------------------------------------------------------
    $str_ind_ip = $_SERVER['REMOTE_ADDR'];
    foreach ($_POST as $key=>$value) {
    	$$key = $value;
    }
    //------------------------------------------------------------------------------------------------
    //  PROCEDURA DI INVIO MAIL
    //-------------------------------------
    $str_oggetto			= OGGETTO_MAIL;
    $str_contenuto_email 	= str_replace("{name}",$visitor,$str_contenuto_email);
    $str_contenuto_email 	= str_replace("{mail}",$visitormail,$str_contenuto_email);
    $str_contenuto_email 	= str_replace("{ip}", $str_ind_ip,$str_contenuto_email);
    $str_contenuto_email 	= str_replace("{corpo}",$notes,$str_contenuto_email);
    $str_contenuto_email 	= str_replace("{url}",$urlWebSite,$str_contenuto_email);
    $headers				= $headers_mail;
     
    if (!@mail($emailAdmin,$str_oggetto,$str_contenuto_email,$headers)) {
    	echo "<div class=\"error\">Have been some problems sending the email.</div>";
    } else {
        echo "<div class=\"success\">The email has been sent successfully.</div>";
    }
    Fichier config.php
    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
    <?php
    //-----------------------------------------------------------------------------------
    // PARAMETRI DI CONFIGURAZIONE GENERALE
    //-----------------------------------------------------------------------------------
    $emailAdmin = "kaouach.ahmed@gmail.com";  // email admin where notices are sent
    $urlWebSite = "www.chlebta.com"; //Website URL that is added to the bottom of emails sent from contact form
     
    $headers_mail = "From: Company Name <info@your_domain.com>\nReply-to:info@your_domain.com";
    define("OGGETTO_MAIL", "Contact from the site.");
     
    ########################################################################
    /*#################		TEMPLATE MAIL		##########################*/
    ########################################################################
    $str_contenuto_email = "
    You are receiving this email because someone used the card of contacts on your website.
    
    Here the personal information that we have contacted:
    
    -------------------------------------------------------------
    Name and Surname: {name}
    E-mail: {mail}
    -------------------------------------------------------------
    
    This is the user's request:
    
    -------------------------------------------------------------
    Message: \n {corpo}
    -------------------------------------------------------------
    
    {url}";
    ?>
    Ce code marche me je veux juste que je modifier le header dans le header je veux maitre From: Nom de celui qui a envoyer Reply: a l'adresse de celui qui a envoyer.
    j' esseyer plein de chose me sa pas marcher. SVP comment faire

  9. #9
    Membre éprouvé Avatar de Pierrot2Mars
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2010
    Messages : 79
    Par défaut
    Tu veux juste spécifier les champs dans le header ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $headers_mail = "From:{name} <{mail}>\nReply-to:{mail};
    Et essaye de mieux formuler tes phrases stp, pour que ce soit plus compréhensible !

  10. #10
    Membre très actif
    Inscrit en
    Juin 2008
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 131
    Par défaut
    déjà testé mais ça pas marcher

Discussions similaires

  1. Probleme d'envoi de formulaire :(
    Par billfake dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 30/08/2012, 18h38
  2. [ZF 1.11] probleme d'envoi de formulaire
    Par wperle dans le forum Zend_Form
    Réponses: 7
    Dernier message: 22/03/2012, 20h38
  3. probleme envoi formulaire php de base
    Par georges0701 dans le forum Langage
    Réponses: 2
    Dernier message: 11/10/2009, 17h55
  4. Probleme d'envoie de formulaire
    Par wollverine dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 02/02/2005, 16h29
  5. [HTML] Problème d'envoi de formulaire
    Par autumn319 dans le forum ASP
    Réponses: 26
    Dernier message: 03/09/2003, 10h06

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