Probleme fonction mail

drogba7213 Messages postés 1550 Statut Membre -  
drogba7213 Messages postés 1550 Statut Membre -
Bonjour,

Je viens de faire un formulaire et je rencontre deux difficultés

la première :

<br>
<input name="femme" id="femme" type="checkbox">
<label for="femme">femme</label><br>
<input name="homme" id="homme" type="checkbox">
<label for="homme">homme</label></p>

et voila ce que je fais pour que ca le renvoie pr mail :

switch ($i) {
case "femme":
$msg .="La personne ayant répondu à ce questionnaire est une femme\n";
break;
case "homme":
$msg .="La personne ayant répondu à ce questionnaire est un homme\n";
break;

La deuxième c'est a partir d'une liste déroulante :

<select name="Note" id="Note">
<option value="Note0">0</option>
<option value="Note1">1</option>
<option value="Note2">2</option>
<option value="Note3">3</option>
<option value="Note4">4</option>
<option value="Note5">5</option>
<option value="Note6">6</option>
<option value="Note7">7</option>
<option value="Note8">8</option>
<option value="Note9">9</option>
<option value="Note10">10</option>
</select>

et la par contre je ne vois pas du tout ce que je doit faire pour renvoyer par mail pouvez vous m'aider svp?

Merci d'avance
Configuration: Windows XP
Internet Explorer 7.0

20 réponses

  1. Mimiste Messages postés 1159 Statut Membre 206
     
    Salut

    J'ai pas saisie ou était le problème justement dans ton premier "problème"

    Pour le second je pense que tu veux savoir la note, dans ce cas dans le "value" au lieu de mettre "Note0" tu met juste 0 par exemple et tu le recup normalement si tu le passe en POST :

    $note = $_POST['Note'];
    $msg .= "La note est " . $Note;
    0
  2. drogba7213 Messages postés 1550 Statut Membre 22
     
    Bah oui j'ai pas pensé a ca juis bete!!!

    Par contre pour le premier problème qu'est ce que tu ne saisi pas je te dirais
    0
  3. drogba7213 Messages postés 1550 Statut Membre 22
     
    juste pour te tenir au courant ta solution

    $note = $_POST['Note'];
    $msg .= "La note est " . $Note;

    ca ne fonctionne pas c'est bizarre
    0
  4. Mimiste Messages postés 1159 Statut Membre 206
     
    J'ai pas mis de majuscule au premier $note, j'ai pas fais attention

    Ben ton premier problème en fait il ce passe quoi, ça ne marche pas ? y a rien dans $msg ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. drogba7213 Messages postés 1550 Statut Membre 22
     
    rectification ta solution fonctionne très bien pardon

    Pour la première rien ne s'affiche dans mon mail en fait mais ca se passe que quand c'est des input en fait et je ne sais pas de quoi ca vient
    0
    1. Mimiste Messages postés 1159 Statut Membre 206
       
      Dans ta variable $i tu est sur qu'il y a bien "Femme" ou "Homme" ? Vérifie avec des "echo"
      Idem pour la variable $msg, vérifie la avant l'envoi

      0
  7. drogba7213 Messages postés 1550 Statut Membre 22
     
    Je ne sais pas je suis étudiant en première année d'info donc je ne suis sur de rien lol

    Que me proposerait tu par rapport a mon code html?
    0
    1. Mimiste Messages postés 1159 Statut Membre 206
       
      ben en fait, je pense que le mieu serai d'utiliser un bouton radio et pas checkbox, puisque quelqu'un peut etre soit femme soit homme mais pas les deux. sa donnerai quelque chose du genre

      HTML

      <input type=radio name=genre value=homme>
      <input type=radio name=genre value=femme>

      PHP

      $genre = $_POST['genre'];

      switch ($genre)
      {
      case "homme" : $msg .= "Un homme"; break;
      case "femme" : $msg .= "Une femme"; break;
      }

      0
  8. drogba7213 Messages postés 1550 Statut Membre 22
     
    petite question futile mais j'ai trop de mal

    $msg .= "La note pour l'assistance à domicile est " . $Note \n;

    Ca bloque pourquoi svp
    0
    1. Mimiste Messages postés 1159 Statut Membre 206
       
      ton \n doit etre entre guillement ", il fais partit de la chaine

      $msg .= "La note pour l'assistance à domicile est " . $Note ."\n";
      0
  9. drogba7213 Messages postés 1550 Statut Membre 22
     
    Voila j'ai régler tout mes problèmes hors mis le fait de forcer les gens à remplir quelques champs pourrait tu me donner un exemple stp merci en tout cas
    0
    1. Mimiste Messages postés 1159 Statut Membre 206
       
      pour vérifier si un champ est rempli ou pas tu teste la variable avec la fonction isset par exemple :

      if (isset($_POST['Champ']))
      {
      //Le champ est rempli tu peu envoyer le mail
      }
      else
      {
      //Le champ n'est pas rempli, retour au formulaire avec un message d'erreur par exemple...
      }
      0
  10. drogba7213 Messages postés 1550 Statut Membre 22
     
    et ca je le met dans la partie html ou dans la page de réponse en php?
    0
    1. Mimiste Messages postés 1159 Statut Membre 206
       
      ça c'est du code php, donc dans ta page de réponse oui
      0
  11. drogba7213 Messages postés 1550 Statut Membre 22
     
    Ok j'ai un autre petit soucis c'est que mon formulaire répond très bien sous IE mais pas sous firefox aurais tu une idée pourquoi? stp
    0
  12. drogba7213 Messages postés 1550 Statut Membre 22
     
    Et par exemlpe pour la sécurité des champs peux tu me donner un exemple stp car je lutte

    ce serais avec ce code j'adapterais pour le reste

    <input maxlength="15" size="15" name="age">
    0
    1. Mimiste Messages postés 1159 Statut Membre 206
       
      Pour les différences d'interprétation entre firefox et IE sa peut venir de pas mal de choses comme par exemple le fait de ne pas coder dans les normes W3C, en general en respectant cette norme ton site est sensé être identique sur tous les navigateurs mais c'est parfois un peu contraignant. Pour ton site la je peu pas vraiment dire sans voir le formulaire mais ce qui cloche c'est le HTML ou le CSS si tu en a.

      Pour la sécurité des champs avec ton exemple ça donnerai un truc comme ça :

      if (isset($_POST['age']))
      {
      //Le champ est rempli tu peu envoyer le mail
      }
      else
      {
      echo "<div align=center>Il faut remplir tous les champs du formulaire<br><br><a href='javascript:history.back();'>Retour</a></div>";
      }
      0
  13. drogba7213 Messages postés 1550 Statut Membre 22
     
    tiens voici mon php

    <?php $dest_mail = 'rsr.pcworld@gmail.com'; # Destinataire du mail
    $sujet = "Réponse au questionnaire RSR-pc-world-agence informatique";
    echo "<p>Votre réponse à ce questionnaire a bien été prise en compte. Nous vous remercions de votre participation. Aucune information relative à ce questionnaire ne sera divulguée.</p>";

    $msg .= "Une réponse au questionnaire a été faites\n\n";
    $genre = $_POST['genre'];
    $msg .="La personne ayant répondu à ce questionnaire est 1" . $genre . "\n";
    $msg .=" Son age : ($_POST[age]) \n" ;
    $msg .=" Son adresse mail est : ($_POST[mail]) \n" ;
    $msg .=" Sa région est : ($_POST[region]) \n" ;
    $msg .=" Sa ville est : ($_POST[ville]) \n" ;
    $provenance = $_POST['provenance'];
    $msg .=" Son ordinateur provient dune " . $provenance . "\n" ;
    $type = $_POST['type'];
    $msg .=" Elle possède un ordinateur de " . $type . "\n" ;
    $operateur = $_POST['operateur'];
    $msg .=" Elle est chez " . $operateur . "\n" ;
    $msg .=" Si elle vient de cocher autres alors cest chez : ($_POST[Autres2]) \n" ;
    $niveau = $_POST['niveau'];
    $msg .=" La personne se considère comme " . $niveau . "\n" ;
    $note = $_POST['Note'];
    $msg .= "La note pour l'assistance à domicile est " . $Note ."\n";
    $note1 = $_POST['Note1'];
    $msg .= "La note pour les formations à domicile est " . $Note1 ."\n";
    $note2 = $_POST['Note2'];
    $msg .= "La note pour les installations de matérielle soi meme est " . $Note2 . "\n";
    $note3 = $_POST['Note3'];
    $msg .= "La note pour les achats sur le net est " . $Note3 . "\n";
    $note5 = $_POST['Note5'];
    $msg .= "La note pour les formations des enfants est " . $Note4 . "\n";
    $note6 = $_POST['Note6'];
    $msg .= "La note pour les créations de site est " . $Note5 . "\n";
    if (mail($dest_mail, $sujet, $msg)) {
    echo "Mail envoyé";
    } else {
    echo "Echec envoi mail";
    }
    ?>
    0
  14. drogba7213 Messages postés 1550 Statut Membre 22
     
    Je n'ai pas de css et donc tu mettrait pour la sécurité le code avant ou après celui que je t'ai passé?
    0
    1. Mimiste Messages postés 1159 Statut Membre 206
       
      <?PHP
      if (isset($_POST['age']) && isset($_POST['mail']) && isset($_POST['region']) && isset($_POST['ville']))
      {
      // Les champs sont rempli donc on envoi le mail
      $dest_mail = 'rsr.pcworld@gmail.com'; # Destinataire du mail
      $sujet = "Réponse au questionnaire RSR-pc-world-agence informatique";
      echo "<p>Votre réponse à ce questionnaire a bien été prise en compte. Nous vous remercions de votre participation. Aucune information relative à ce questionnaire ne sera divulguée.</p>";

      $msg .= "Une réponse au questionnaire a été faites\n\n";
      $genre = $_POST['genre'];
      $msg .="La personne ayant répondu à ce questionnaire est 1" . $genre . "\n";
      $msg .=" Son age : ($_POST[age]) \n" ;
      $msg .=" Son adresse mail est : ($_POST[mail]) \n" ;
      $msg .=" Sa région est : ($_POST[region]) \n" ;
      $msg .=" Sa ville est : ($_POST[ville]) \n" ;
      $provenance = $_POST['provenance'];
      $msg .=" Son ordinateur provient dune " . $provenance . "\n" ;
      $type = $_POST['type'];
      $msg .=" Elle possède un ordinateur de " . $type . "\n" ;
      $operateur = $_POST['operateur'];
      $msg .=" Elle est chez " . $operateur . "\n" ;
      $msg .=" Si elle vient de cocher autres alors cest chez : ($_POST[Autres2]) \n" ;
      $niveau = $_POST['niveau'];
      $msg .=" La personne se considère comme " . $niveau . "\n" ;
      $note = $_POST['Note'];
      $msg .= "La note pour l'assistance à domicile est " . $Note ."\n";
      $note1 = $_POST['Note1'];
      $msg .= "La note pour les formations à domicile est " . $Note1 ."\n";
      $note2 = $_POST['Note2'];
      $msg .= "La note pour les installations de matérielle soi meme est " . $Note2 . "\n";
      $note3 = $_POST['Note3'];
      $msg .= "La note pour les achats sur le net est " . $Note3 . "\n";
      $note5 = $_POST['Note5'];
      $msg .= "La note pour les formations des enfants est " . $Note4 . "\n";
      $note6 = $_POST['Note6'];
      $msg .= "La note pour les créations de site est " . $Note5 . "\n";
      if (mail($dest_mail, $sujet, $msg)) {
      echo "Mail envoyé";
      } else {
      echo "Echec envoi mail";
      }
      }
      else
      {
      // Un ou plusieurs champs ne sont pas remplis donc on affiche un message d'erreur et un lien retour
      echo "<div align=center>Il faut remplir tous les champs du formulaire<br><br><a href='javascript:history.back();'>Retour</a></div>";
      }
      ?>

      Si je me suis pas planté c'est un truc comme ça
      0
  15. drogba7213 Messages postés 1550 Statut Membre 22
     
    ok je test et au niveau de firefox?
    0
  16. Mimiste Messages postés 1159 Statut Membre 206
     
    Y faudrai que je voi ton formulaire coté HTML avec les bouton tout ça pour voir ce qui ce passe
    0
  17. drogba7213 Messages postés 1550 Statut Membre 22
     
    et en faite ton code n'est pas bon car il passe toujours
    meme les si les champs ne sont pas remplis
    0
    1. Mimiste Messages postés 1159 Statut Membre 206
       
      ha bizzare j'ai testé chez moi sa marche

      essai de remplacer la ligne du if

      if (isset($_POST['age']) && isset($_POST['mail']) && isset($_POST['region']) && isset($_POST['ville']))

      par

      if ($_POST['age'] != "" && $_POST['mail'] != "" && $_POST['region'] != "" && $_POST['ville'] != "")
      0
  18. drogba7213 Messages postés 1550 Statut Membre 22
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html><head>
    <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"><title>questionnaire.html</title></head>
    <body>
    <form method="post" action="questionnaire.php">
    <p style="text-align: center;"><big style="text-decoration: underline;"><big><span style="font-weight: bold;">Questionnaire </span></big></big></p>
    <p style="text-align: left;"></p>
    <p style="text-align: left;"><big style="font-weight: bold;">Vous êtes :</big></p>
    <p style="text-align: left;"><br>
    <select name="genre" id="genre"><option value="femme">Femme</option><option value="homme">Homme</option></select>
    </p>
    <br>
    <div style="text-align: left;"><big><big><span style="font-weight: bold;"><small><br>
    Adresse E-Mail : (Facultatif)</small><br>
    <br>
    </span></big></big><big><big><span style="font-weight: bold;"><input maxlength="40" size="40" name="mail"></span></big></big><br>
    <br>
    <big style="font-weight: bold;">Votre âge ?
    </big><br>
    <br>
    <input maxlength="15" size="15" name="age"><br>
    <br>
    <big>
    <p class="MsoNormal"><span style="font-weight: bold;">Dans
    quelle région de France habitez-vous ?</span> </p>
    </big><br>
    <big><input maxlength="15" size="15" name="region"></big><br>
    <br>
    <big>
    </big>
    <p style="font-weight: bold;" class="MsoNormal"><big>Dans
    quelle ville résidez-vous ?</big></p>
    <p class="MsoNormal"><big><input maxlength="15" size="15" name="ville"></big></p>
    <p style="font-weight: bold;" class="MsoNormal"><big>Avez-vous
    un ordinateur ? Si
    oui préciser sa provenance</big></p>
    <select name="provenance" id="provenance"><option value="boutiquedassemblage">Boutique d'assemblage</option><option value="grandesurface">Grandesurface</option></select>
    <br>
    <br>
    <big><span style="font-weight: bold;">Quel
    type d’ordinateur possédez-vous ?</span></big><big style="font-weight: bold; text-decoration: underline;">
    </big><br>
    <br>
    <select name="type" id="type"><option value="bureau">Bureau</option><option value="portable">portable</option></select>
    <br>
    <br>
    <p style="font-weight: bold;" class="MsoNormal"><big>Avez-vous
    internet par
    l’ADSL ? Si oui quel operateur ?</big></p>
    <br>
    <select name="operateur" id="operateur"><option value="orange">Orange</option><option value="neuf">Neuf</option><option value="sfr">SFR</option><option value="free">Free</option><option value="autres">Autres</option></select>
    <br>
    <br>
    <big><span style="font-weight: bold;">Précisez
    pour autre svp :</span></big>
    <br>
    <br>
    <input maxlength="40" size="40" name="Autres2">
    <p style="font-weight: bold;" class="MsoNormal"><big>Comment
    vous considérez-vous en la matière ?</big></p>
    <select name="niveau" id="niveau"><option value="debutant">Débutant</option><option value="intermediaire">Intermédiaire</option><option value="expert">Expert</option></select>
    <br>
    <br>
    <div style="text-align: center;"><big><span style="font-weight: bold;">Pour cette nouvelle série de question,
    vous devrez effectuer
    une notation  entre
    0 et 10 ce qui nous
    permettra de juger les différents besoins de services de nôtre
    clientèle.</span>
    </big></div>
    <p style="font-weight: bold;" class="MsoNormal"></p>
    <p class="MsoListParagraph" style="text-indent: -18pt; font-weight: bold;"><big><span style=""><span style=""><span style="font-family: "Times New Roman"; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"> 
    </span></span></span>    Que
    pensez-vous d’une
    assistance à
    domicile ?</big></p>
    <select name="Note" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
    <p class="MsoListParagraph" style="text-indent: -18pt; font-weight: bold;"></p>
    <p style="font-weight: bold;" class="MsoNormal"><big>Seriez-vous
    intéressés par des formations à domicile ?</big></p>
    <select name="Note1" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
    <p style="font-weight: bold;" class="MsoNormal"></p>
    <p style="font-weight: bold;" class="MsoNormal"><big>Trouvez-vous
    contraignant d’installer votre matériel
    informatiques vous même ?</big></p>
    <select name="Note2" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
    <p style="font-weight: bold;" class="MsoNormal"></p>
    <big style="font-weight: bold;"><span style="font-size: 11pt; line-height: 115%; font-family: "Calibri","sans-serif";"><big>Commanderiez-vous
    des pièces informatiques par internet si vous en aviez
    l’opportunité ?</big> </span><br>
    <select name="Note3" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
    <br>
    <br>
    <big><span style="font-size: 11pt; line-height: 115%; font-family: "Calibri","sans-serif";">Aimeriez-
    vous que votre enfant bénéficie d’une formation informatique<span style="">  </span>à l’école dès son plus
    jeunes âges
    (Primaire) ?</span></big><br>
    <select name="Note4" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
    <br>
    <big style="text-decoration: underline;"><br>
    </big><big><span style="font-size: 11pt; line-height: 115%; font-family: "Calibri","sans-serif";">Avez-vous
    déjà pensé à créer un site internet ? </span></big></big><br>
    <select name="Note5" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
    <br>
    <br>
    <div style="text-align: center;"><big><big><span style="font-weight: bold;"><a href="questionnaire.php"><input value="Valider" type="submit"></a>   
           
        </span></big></big><input value="annuler" type="reset">
    </div>
    </div>
    </form>

    </body></html>
    0
    1. Mimiste Messages postés 1159 Statut Membre 206
       
      pour mon code qui marchai pas j'ai repondu au dessus de ton dernier post, je sais pas si tu l'a lu on a post en même temps.

      essai d'enlever le lien autour de ton bouton submit, il sert a rien puisque dans la balise <form> plus haut tu a déjà defini qu'il devai aller sur la page questionnaire.php
      0
  19. drogba7213 Messages postés 1550 Statut Membre 22
     
    Si j'ai essayer avec ton nouveau code et il ne fonctionne pas non plus
    0
  20. drogba7213 Messages postés 1550 Statut Membre 22
     
    bon dans tout les cas on reprendra demain je vais me pioter merci et a demain
    0
  21. drogba7213 Messages postés 1550 Statut Membre 22
     
    as tu trouvé mec car ca bug toujours autant lol
    0