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 :

Récupération valeurs case à cocher dans formulaire e-mail [PHP 5.3]


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Femme Profil pro
    retraitée
    Inscrit en
    Juin 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : retraitée

    Informations forums :
    Inscription : Juin 2006
    Messages : 147
    Points : 80
    Points
    80
    Par défaut Récupération valeurs case à cocher dans formulaire e-mail
    bonjour à tous,

    voici j'ai un formulaire avec des checkboxes, et mon problème est de ne pas arriver à récupérer ces valeurs dans le mail que je reçois
    je récupère "Array" en lieu et place des valeurs sélectionnées
    j'ai regardé plein d'exemples, mais là je bloque et ne trouve pas la clef !!!
    quelqu'un pourrait il m'éclairer sur le sujet, je dois faire une anerie mais je ne vois plus rien tant j'ai fixé le problème
    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Document sans nom</title>
    </head>
     
    <body>
    <div align=center>
    <form method=POST action=formmail2.php >
    <input type=hidden name=subject value=formmail>
    <table>
    <tr><td>Votre Nom:</td>
    <td><input type=text name=realname size=30></td></tr>
    <tr><td>Votre Email:</td>
    <td><input type=text name=email size=30></td></tr>
    <tr><td>Sujet:</td>
      <td><input type=text name=title size=30></td></tr>
     
    <tr>
      <td align="center">Sexe
        <input type="radio" name="sexe" value="Homme" checked="checked" />
        M
        <input type="radio" name="sexe" value="Femme" />
        F</td>
      <td align="center">pays
        <select name="pays">
          <option>France</option>
          <option>Belgique</option>
          <option>Suisse</option>
          <option>Autre</option>
          </select></td>
    </tr>
    <tr>
      <td colspan="2" align="center"><p>
        <input type="checkbox" name="habitat[]" id="id1" value="hameau"/>hameau<br/>
    	<input type="checkbox" name="habitat[]" id="id2" value="village"/>village<br/>
    	<input type="checkbox" name="habitat[]" id="id3" value="petite ville"/>petite ville<br/>
    	<input type="checkbox" name="habitat[]" id="id4" value="grande ville"/>grande ville<br/>
     
     
        <br />
      </p></td>
    </tr>
    <tr>
      <td colspan="2" align="center"><input type="checkbox" name="newsletter" />
        Recevoir la newsletter</td>
    </tr>
    <tr>
      <td colspan="2">Commentaires:<br />
        <textarea cols="50" rows="6" name="commentaires"></textarea></td>
    </tr>
    </table>
    <br> <input type=submit value=Envoyer> -
    <input type=reset value=Annuler>
    </form>
    </div>
     
    </body>
    </html>
    la page PHP qui traite les données pour envoi vers le mail : formmail2.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
    32
    33
    34
    35
    36
    37
    38
    39
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Document sans titre</title>
    </head>
     
    <body>
    <?php
    //Envoi du mail 
     
    $TO = "monmail@orange.fr"; // L'adresse mail ou recevoir ce formulaire //
    $head = "From: $email\r\n"; // adresse email de l'Expediteur
    $head .= "X-Sender: $email\n"; 
    $head .= "X-Mailer: PHP\n";
    $head .= "Return-Path: $email\n";
    $head .= "Content-Type: text/plain; charset=iso-8859-1\n";
    $sujet = "Formulaire de contact"; // sujet du mail
    $habitat= $_POST["habitat"];
    $informations = "
    Nom : $realname \r\n
    Email : $email \r\n
    Sujet du formulaire: $title\r\n
    Commentaires : $commentaires \r\n
    Sexe : $sexe \r\n
    Pays : $pays \r\n
    Habitat : $habitat \r\n
    Newsletter : $newsletter \r\n
    ";
    $res = mail($TO, $sujet ,$informations, $head);
    if (true == $res) {
    Header("Location: merci.html" ); // (l'url vers laquel est redirigé l'expediteur si formulaire OK) ;
    } else {
    Header("Location: 404.html" ); // (l'url vers laquel est redirigé l'expediteur si formulaire NONOK) ;
    } 
    ?>
     
    </body>
    </html>
    d'avance merci !!!

  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
    Au passage, ecrit ton html avec des guillemets aux valeurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form method="POST" action="formmail2.php">
    Pour les checkbox tu peux faire comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $habitat= implode(";",$_POST["habitat"]);

  3. #3
    Membre régulier
    Femme Profil pro
    retraitée
    Inscrit en
    Juin 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : retraitée

    Informations forums :
    Inscription : Juin 2006
    Messages : 147
    Points : 80
    Points
    80
    Par défaut Super !
    c'est parfait, mais dis moi encore une question, si je veux que le résultat soit présenté, non pas en ligne :
    Habitat : hameau;village;petite ville;grande ville
    mais comme cela :
    Habitat :
    hameau
    village
    petite ville
    grande ville
    y a t il une solution pour faire cela ?

    encore merci pour tes conseils

  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 remplaces ";" par "\r\n"

  5. #5
    Membre régulier
    Femme Profil pro
    retraitée
    Inscrit en
    Juin 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : retraitée

    Informations forums :
    Inscription : Juin 2006
    Messages : 147
    Points : 80
    Points
    80
    Par défaut encore merci pour ton aide
    je mets le code complet pour ceux que ça intéresse :
    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>MODELE DE SCRIPT PHP POUR RECEVOIR LES INFOS DANS MAIL</title>
    </head>
     
    <body>
    <?php
    session_start();
    if(!isset($_SESSION['code']) OR strlen($_SESSION['code']) !=5) exit("Erreur !");
    if($_SESSION['code'] != $_POST['verif']) exit("Erreur les valeurs sont différentes !");
     
    //Envoi du mail 
     
    $TO = "monmail@orange.fr"; // L'adresse mail ou recevoir ce formulaire //
    $head = "From: $email\r\n"; // adresse email de l'Expediteur
    $head .= "X-Sender: $email\n"; 
    $head .= "X-Mailer: PHP\n";
    $head .= "Return-Path: $email\n";
    $head .= "Content-Type: text/plain; charset=iso-8859-1\n";
    $sujet = "Formulaire de contact"; // sujet du mail
    $habitat= implode ("\r\n",$_POST["habitat"]);
    $informations = "
    Nom : $realname \r\n
    Email : $email \r\n
    Sujet du formulaire: $title\r\n
    Commentaires : $commentaires \r\n
    Sexe : $sexe \r\n
    Pays : $pays \r\n
    Habitat : $habitat \r\n
    Newsletter : $newsletter \r\n
    ";
    $res = mail($TO, $sujet ,$informations, $head);
    if (true == $res) {
    Header("Location: merci.html" ); // (l'url vers laquel est redirigé l'expediteur si formulaire OK) ;
    } else {
    Header("Location: 404.html" ); // (l'url vers laquel est redirigé l'expediteur si formulaire NONOK) ;
    } 
    session_unset();
    session_destroy();
     
    ?>
     
    </body>
    </html>
    cela peut servir !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Cases à cocher dans formulaire d'envoi d'e-mail
    Par Stéph utilisateur d'acces dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 11/09/2009, 19h20
  2. rajouter case à cocher dans formulaire
    Par yoann64 dans le forum ActionScript 1 & ActionScript 2
    Réponses: 0
    Dernier message: 08/06/2009, 09h10
  3. Récupération valeur case à cocher dans la base de données
    Par jarod6827 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 09/04/2009, 13h25
  4. Réponses: 3
    Dernier message: 02/12/2008, 22h27
  5. Case à cocher dans formulaire en continu
    Par Sofie109 dans le forum Access
    Réponses: 4
    Dernier message: 10/07/2006, 14h34

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