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 :

[Mail] probleme avec la fonction mail


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 130
    Points : 55
    Points
    55
    Par défaut [Mail] probleme avec la fonction mail
    Bonjour,

    Je possède une base de données sous mysql avec de nombreux champs dont un champ mailProprio.

    Mon problme est le suivant, sur la page infos2.php, je récupéère l'id de l'enregistrement et je fais un lien vers une page email_test.php dans laquelle je récupéère l'id et le mail de l'enregistrement et il y a ausis le formulaire d'envoi.

    Mon souci est que des que je vais sur la page email_test.phph, un email vide m'est envoyée et eun deuxieme (celui que je veux) quand je remplis le formulaire et que j'appuie sur envoyer.

    A chaque fois que je fais f5, un email m'est envoyé.

    Comment faire pour empecher de recevoir des emails vides et ceux lorsque j'appuie sur f5.

    Je vous done mon code:

    la page infos2.php=?1571
    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
     
     
     
      <?
    if(isset($_GET["id"])) $id= $_GET["id"];
    else exit();
     
     
     
     
    include("outils/connexion.php");
     
     
     
    $sql = "SELECT * FROM gites   WHERE id = ".$id ;
     
     
     
    $req = mysql_query($sql, $base) or die(mysql_error());
     
     
     
     
    $rows = mysql_fetch_assoc($req); 
     
    	echo '<table  class=cadre_infos ><tr><td class=titre_infos colspan=2>'.
    	   "<a href='http://www.annuaire-les-vacances.com/email_tes.php?id=".$rows["id"]."'>".
    	   "proprio</a></td></tr></table>";  
     
     
     
     
           mysql_free_result ($req); 
        echo '<br>';
     
    mysql_close (); 
    ?>
    et ma page email_test.php(mon formulaire)

    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
     
    <?php 
    if(isset($_GET["id"])) $id= $_GET["id"];
    else exit();
     
     
    include("outils/connexion.php");
     
    $sql = "SELECT * FROM gites   WHERE id = ".$id ;
     
    $req = mysql_query($sql, $base) or die(mysql_error());
     
    $rows = mysql_fetch_assoc($req);
     
     
    $email2=$rows['mailProprio'];
    $titre='Demande de renseignements sur votre location - http://www.annuaire-les-vacances.com';
    $Headers  = "Content-Type:text/html;charset=iso-8859-1\n";
    $Headers .= "Content-Transfer-Encoding: 8bit\n";
    $Headers = "Location: http://<URL de la page de remerciement>";
    $headers="From: ".$email1;
    mail($email2,$titre,$message,$headers);
     
    echo'
    
    
    <table class=cadre_infos width=600><form method="post"  name="formulaire">
    <br><tr><td class=titre_infos>Envoyez un mail au propriétaire</td></tr>
    <tr><td>&nbsp;</td></tr>
    <tr><td class=descriptif_infos>Votre email</td></tr>
    <tr><td class=descriptif_infos>
    <input type=text name=email1 size=80 maxlength=50>
    </td></tr>
    <tr><td>&nbsp;</td></tr>
    <tr><td class=descriptif_infos>
    
    Message
    </td></tr>
    <tr><td class=descriptif_infos>
    <textarea name=message cols=80 rows=6 wrap="soft">
    </textarea>
    </td></tR>
    
    
    
    <tr align=center><td align=center class=descriptif_infos>
    <input type=submit name=bouton value=Envoyer></td></tr></table>
    </form> '; 
     
    ?>
    Merci de votre aide

  2. #2
    Membre éclairé
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Points : 708
    Points
    708
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    code divers...
     
    if (isset($_POST['bouton'])) {
    envoyer mail
    ...
    }
     
    suite du code...

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 130
    Points : 55
    Points
    55
    Par défaut
    Bonjour,

    Je ne comprend pas trop le code qu tu m'a donné.

    Je dois le mettre dans la page infos2.php ou email_test.php?

    C une fonction javascript que je dois éléborer?

    Merci de ton aide

  4. #4
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Il veut tout simplement dire que tu dois tester la soumission du formulaire avant d'envoyer le mail

  5. #5
    Membre éclairé
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Points : 708
    Points
    708
    Par défaut
    tout simplement



    donc, c'est bien du PHP, pas du JS et tu poses ça dans email_test

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    //le code de la requête
     
    if (isset($_POST['bouton'])) {
     
    //le code de construction et d'envoi du mail
     
    }
     
    //le code du formulaire
    éventuellement, si tu veux ne pas afficher le formulaire si un mail a été envoyé tu fais if (...) { mail } else { formulaire }

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 130
    Points : 55
    Points
    55
    Par défaut
    Merci pour ta réponse dia

    Ca marche impec,

    encore une petite question, comment faire pour revenir à la page pérécédente lorsque le mail a été envoyé?

    Merci

  7. #7
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Tu as ceci : Comment faire une redirection ?

    Sinon tu peux faire un lien qui renvoie à la page

  8. #8
    Membre éclairé
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Points : 708
    Points
    708
    Par défaut
    dans les 2 cas, n'oublie pas de signifier au client que son mail a bien été envoyé, mine de rien, c'est important

Discussions similaires

  1. [Mail] mon probleme avec la fonction mail
    Par hhafid dans le forum Langage
    Réponses: 1
    Dernier message: 03/02/2009, 08h23
  2. [EasyPHP] probleme avec la fonction mail()
    Par metrax dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 10
    Dernier message: 09/04/2007, 22h20
  3. [Mail] Problème avec la fonction mail()
    Par Empty_body dans le forum Langage
    Réponses: 2
    Dernier message: 08/09/2006, 08h47
  4. [Mail] problem avec la fonction mail()
    Par pierrot10 dans le forum Langage
    Réponses: 1
    Dernier message: 04/09/2006, 15h29
  5. [Mail] probleme avec la fonction mail de php
    Par fdavid dans le forum Langage
    Réponses: 3
    Dernier message: 15/06/2006, 15h48

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