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 :

Problème pour réception de valeurs d'un formulaire


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 6
    Points : 4
    Points
    4
    Par défaut Problème pour réception de valeurs d'un formulaire
    Hello tout le monde,

    Je coince sur mon code et application php. J'ai créé un questionnaire test. 10 questions qui aboutissent à un résultat. Sauf que : j'ai des bugs au niveau des résultats car il n'y a pas toujours une bonne restitution des valeurs sur les 10 questions. Pour le savoir, j'ai renvoyé toutes les valeurs à l'une de mes adresses mails. Ainsi, parfois la réponse 1 n'est pas correctement restituée, parfois c'est la réponse 5...

    J'aimerais ainsi qu'il n'y ait plus aucun bug dans la restitution des résultats.

    Je vous affiche ici la conception de mon formulaire. Ainsi, si vous voyez des problèmes dans mon code PHP...

    J'ai donc dix questions qui sont sous cette forme. Par exemple, pour la question numéro 5 :

    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
    <?php
    session_start()?><?php 
     
    $_SESSION['R4'] = $_POST['R4']?>
    <?php 
    $r1 = $_SESSION['R1'];
    $r2 = $_SESSION['R2'];
    $r3 = $_SESSION['R3'];
    $r4 = $_SESSION['R4']; ?>
    <body>
    <form id="formulaire" name="form1" method="post" action="page6.php">
      <p>
        <label>
          <input type="radio" name="R5" value="1" id="R5_0" />
          vous êtes d'accord</label>
        <br /></p>
        <label>
          <input type="radio" name="R5" value="5" id="R5_1" />
          vous n'êtes pas d'accord</label>
        <br /></p>
        <label>
          <input type="radio" name="R5" value="3" id="R5_2" >
          sans opinion.</label>
        <br /></p>
        <label>
          <input type="radio" name="R5" value="2.1" id="R5_3" />
          je ne souhaite pas répondre à cette question. </label>
        <br /></p>
     
        <label>
          <input type="radio" name="R5" value="4.02" id="R5_4" "/>
          vous êtes plutôt d'accord. </label> 
     
      </p><input name="Validation" type="submit" id="bouton_valider" value="Valider" onclick="valid_form()"/>
    </form>
    Ensuite au bout de mes dix questions, nous arrivons sur une page de traitement de résultat.

    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
    <?php
    session_start()?>
     
    <?php 
    $_SESSION['R10'] = $_POST['R10']?>
    <?php 
    $r1 = $_SESSION['R1'];
    $r2 = $_SESSION['R2'];
    $r3 = $_SESSION['R3'];
    $r4 = $_SESSION['R4'];
    $r5 = $_SESSION['R5'];
    $r6 = $_SESSION['R6']; 
    $r7 = $_SESSION['R7'];
    $r8 = $_SESSION['R8'];
    $r9 = $_SESSION['R9'];
    $r10 = $_SESSION['R10']?>
     
    // Affichage des resultats;
     If ( $res == "10"){
      echo "Vous êtes clairement d'extrême gauche."; echo '</p>' ; echo '<br /><img src="images/extrgauche.jpg" border="0" /></div> '; }
     If ( $res >= "11" && $res <= "19" && $r1 == "1" && $r2 == "1" && $r3 == "1" && $r5 == "1" && $r6 == "1" && $r7 == "1" && $r8 == "1" && $r9 == "1" && $r10 == "1"){
      echo "Vous êtes de gauche.."; echo '</p>' ; echo '<br /><img src="images/gauche.jpg" border="0" /></div> '; }
    Les résultats sont envoyés par la fonction mail :
    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
     
    <?php
    require "phpmailer/class.phpmailer.php"; 
        $mail = new PHPmailer(); 
        $mail->IsSMTP(); 
        $mail->IsHTML(true); 
        $mail->Host='smtp.laposte.net'; 
        $mail->Port=587;
        $mail->Username = 'pou*******@laposte.net';      // SMTP login
        $mail->Password = '******';        // SMTP password
        $mail->SMTPAuth = true;      // Active l'uthentification par smtp
        $mail->SMTPSecure = 'tls';
        $mail->From='pou*******@laposte.net'; 
        $mail->AddAddress('pou******@laposte.net'); 
        $mail->AddReplyTo('pou********@laposte.net');      
     
      $envoi_mail_body = "$r1, $r2, $r3, $r4, $r5, $r6, $r7, $r8, $r9, $r10, $res" ;
     
      $headers = "$res";
     $mail->Subject=$headers; 
     
        $mail->Body.=$envoi_mail_body ; 
     
        if(!$mail->Send()){ //Teste si le return code est ok. 
            echo $mail->ErrorInfo; //Affiche le message d'erreur
            } 
        else{      
            echo ''; 
        } 
        $mail->SmtpClose(); 
        unset($mail); 
     
     ?>
    Merci d'avance pour votre aide.

  2. #2
    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
    ton code c'est du copier coller de l'existant ou pas ? car il manque quelques ';' et pour la session " au lieu de '
    après, plutot que de t'envoyer les résultats pas email si tu t'affichait page par page les résultat précédent pour voir ou tu t'es planté?
    la vie n'est pas cirrhose des foies ...

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

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    Salut Vil'coyote

    1) Oui tout à fait c'est du "copier-coller."

    2) Il manque des ";" ? (tu veux dire à ligne 16 du 2e code : $r10 = $_SESSION['R10']?> ?)

    3) que veux-tu dire par remplacer les " '" " dans les sessions par " ' " ?

    4) En fait j'ai toutes mes données sauf pour la question 5 (code donné lors de mon premier message)

    Merci à toi,

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/04/2006, 18h40
  2. Problème pour classer les valeurs d'un champ
    Par AjJi dans le forum Access
    Réponses: 11
    Dernier message: 06/04/2006, 09h19
  3. Réponses: 1
    Dernier message: 03/12/2005, 12h24
  4. problème pour récupérer une valeur dans ma bd (débutante)
    Par auryn111 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 26/08/2005, 17h49
  5. Problème pour afficher un contrôle dans un formulaire
    Par JahRastafari dans le forum IHM
    Réponses: 5
    Dernier message: 16/06/2005, 10h15

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