Forum Info PC Forum Info PC est un forum informatique. Vous y trouverez des espaces de support, d’astuces et de tutoriels, de discussions... 2011-07-09T21:48:07+02:00 /feed.php?f=20&t=446&mode 2011-07-09T21:48:07+02:00 2011-07-09T21:48:07+02:00 /viewtopic.php?t=446&p=1655#p1655 <![CDATA[Re: Problème d'incrémentation dans une bdd]]>
voilà mon code :

Code : Tout sélectionner
  1.  
  2. <body bgcolor="#FFFCCC" text="#0000B0">
  3.         <div align="center">
  4.             <fieldset>
  5.                 <strong>Formulaire
  6.                 </strong>
  7.                 <form action="./validation.php" method="post" onSubmit="return envoi()">
  8.                     <p>
  9.                         <fieldset>
  10.                             <legend align="center">Définition de la panne :
  11.                             </legend>
  12.                             <?php
  13.                             echo $_POST['panne'];                            
  14.                             ?>
  15.                         </fieldset>
  16.                     </p>
  17.                     <p>
  18.                         <fieldset>
  19.                             <legend align="center">
  20.                                 Solution :
  21.                             </legend>
  22.                             <?php echo $_POST['suggestions'];                            
  23.                             $panne = $_POST['panne'];
  24.                             $suggestions = $_POST['suggestions'];
  25.                             ?>
  26.                         </fieldset>
  27.                         <input type="submit" value="Valider">
  28.                                 <?php
  29.                                 mysql_connect("localhost", "root");
  30.                                 mysql_select_db("aide");
  31.                                 $panne = mysql_real_escape_string(htmlspecialchars($_POST['panne']));
  32.                                 $suggestion = mysql_real_escape_string(htmlspecialchars($_POST['suggestions']));     
  33.                                 mysql_query("INSERT INTO irgp VALUES('', '$panne', '$suggestions')");
  34.                                 ?>
  35.                         </input>
  36.                     </p>
  37.                 </form>
  38.                 <a href="./default.php">
  39.                     Revenir à la page d'accueil
  40.                 </a>
  41.             </fieldset>
  42.         </div>
  43.     </body>
  44.  

Statistiques: Posté par DJ Kin-C — Sam 9 Juil 2011 21:48


]]>
2011-06-30T18:51:11+02:00 2011-06-30T18:51:11+02:00 /viewtopic.php?t=446&p=1654#p1654 <![CDATA[Re: Problème d'incrémentation dans une bdd]]> Statistiques: Posté par DJ Kin-C — Jeu 30 Juin 2011 18:51


]]>
2011-06-30T18:50:46+02:00 2011-06-30T18:50:46+02:00 /viewtopic.php?t=446&p=1653#p1653 <![CDATA[Re: Problème d'incrémentation dans une bdd]]>
Jack a écrit:
Puisque tu n'as aucun input avec un attribut name, tu ne peux donc pas les récupérer.


Dans tes input de la page précédente, met :
Code : Tout sélectionner
  1.  
  2. <input type="text" name="panne" id="panne" />
  3. ----------------
  4. <input type="text" name="suggestions" id="suggestions" />
  5.  


et ça devrait marcher ;)

Statistiques: Posté par darky — Jeu 30 Juin 2011 18:50


]]>
2011-06-30T18:50:05+02:00 2011-06-30T18:50:05+02:00 /viewtopic.php?t=446&p=1652#p1652 <![CDATA[Re: Problème d'incrémentation dans une bdd]]>
Essaye en pdo non ?

Statistiques: Posté par Anonyme — Jeu 30 Juin 2011 18:50


]]>
2011-06-30T18:49:35+02:00 2011-06-30T18:49:35+02:00 /viewtopic.php?t=446&p=1651#p1651 <![CDATA[Re: Problème d'incrémentation dans une bdd]]>
Notice: Undefined index: suggestions in C:\wamp\www\laposte\validation.php on line 53

ah voila mon petit problème, sur le net ça dit qu'on a souvent cette erreur mais ils ne disent pas comment la régler :s

Code : Tout sélectionner
  1.  
  2. <?php
  3. mysql_connect("localhost", "root");
  4. mysql_select_db("aide");
  5. // On récupère les données du formulaire
  6. $i = 0;
  7. $panne = mysql_real_escape_string($_POST['panne']);                                          => line 52
  8. $suggestions = mysql_real_escape_string($_POST['suggestions']);                         => line 53
  9.  
  10. $panne_erreur = NULL;
  11. $suggestions_erreur = NULL;
  12. if(empty($panne))
  13. {
  14.        $panne_erreur = "Veillez remplir le champ Problème";
  15.        $i++;
  16. }
  17. if(empty($suggestions))
  18. {
  19.        $suggestions_erreur = "Veillez remplir le champ solution";
  20.        $i++;
  21. }
  22. if($i == 0)
  23. {
  24.       mysql_query('
  25.       INSERT INTO irgp (id, titre, solution) VALUES ("", "'.$panne.'", "'.$suggestions.'")') or die(mysql_error());
  26. }
  27. else
  28. {
  29.         echo '<h1>Inscription interrompue</h1>';
  30.         echo '<p>Une ou plusieurs erreurs se sont produites pendant l incription</p>';
  31.         echo '<p>'.$i.' erreur(s)</p>';
  32.         echo '<p>'.$panne_erreur.'</p>';
  33.         echo '<p>'.$suggestions_erreur.'</p>';
  34.         echo'<p>Cliquez <a href="./formajout.php">ici</a> pour recommencer</p>';
  35. }
  36.  
  37. ?>


Merci de me répondre ^^

Statistiques: Posté par DJ Kin-C — Jeu 30 Juin 2011 18:49


]]>
2011-06-30T18:48:49+02:00 2011-06-30T18:48:49+02:00 /viewtopic.php?t=446&p=1650#p1650 <![CDATA[Re: Problème d'incrémentation dans une bdd]]> Statistiques: Posté par Quentin01 — Jeu 30 Juin 2011 18:48


]]>
2011-06-30T18:48:24+02:00 2011-06-30T18:48:24+02:00 /viewtopic.php?t=446&p=1649#p1649 <![CDATA[Re: Problème d'incrémentation dans une bdd]]>
Le problème étant qu'avec ton script d'origine, tu peux pas récupérer $_POST[pr] et $_POST['suggestion']. Puisque tu n'a aucun input avec un attribut name, tu ne peux donc pas les récupérer. La solution de darky semble juste. Sauf que si c'est juste pour deux champs, je trouve inutile d'incrémenter une variable i et de mettre les erreurs dans des variables pour les afficher ensuite. Je l'aurais fais en moins de ligne.

Code : Tout sélectionner
  1. <?php
  2. if(isset($_POST['panne'] && isset($_POST['suggestion']))
  3. {
  4.    $panne = trim(mysql_real_escape_string($_POST['panne']));
  5.    $suggestion = trim(mysql_real_escape_string($_POST['suggestion']));
  6.    if(!empty($panne) && !empty($suggestion) )
  7.    {
  8.       mysql_query = ('INSERT INTO irgp (titre, solution) VALUES ("'.$panne.'", "'.$suggestions.'")') or exit(mysql_error());
  9.    }
  10.    else
  11.    {
  12.       echo ' Il manque des champs ' ;
  13.    }
  14. }
  15. ?>



Pour traiter uniquement deux champs, c'est une façons plus courte même si la solution plus haut reste valable. Chacun emploi la façons qu'il désire :).
Il faut juste savoir que par n'importe quelle façons utilisée pour récupérer des infos et les envoyer en bdd ( Input bouton, input text, input radio etc ) il faut un attribut name, sinon tu ne peux pas récupérer les valeurs.

Statistiques: Posté par Anonyme — Jeu 30 Juin 2011 18:48


]]>
2011-06-30T18:47:42+02:00 2011-06-30T18:47:42+02:00 /viewtopic.php?t=446&p=1648#p1648 <![CDATA[Re: Problème d'incrémentation dans une bdd]]> Statistiques: Posté par DJ Kin-C — Jeu 30 Juin 2011 18:47


]]>
2011-06-30T18:47:09+02:00 2011-06-30T18:47:09+02:00 /viewtopic.php?t=446&p=1647#p1647 <![CDATA[Re: Problème d'incrémentation dans une bdd]]> Bon déjà je ne ferai pas comme ça. Saisir les données et enregistrer ces données dans la même page Php.

Dans ta première page fait des input :
Code : Tout sélectionner
  1.  
  2. <html>
  3. <body bgcolor="#FFFCCC" text="#0000B0">
  4.         <div align="center">
  5.             <fieldset>
  6.                 <strong>Formulaire
  7.                 </strong>
  8.                 
  9.                 <!-- <button onClick="contraste()">Body en noir et blanc</button>
  10.                 <button onClick="contraste1()">Body en jaune et vert</button>
  11.                 <button onClick="contraste2()">Body par défaut</button> -->
  12.                 <form action="http://localhost/laposte/validation.php" method="post" onSubmit="return envoi()">
  13.                     <p>
  14.                         <fieldset>
  15.                             <legend align="center">Définition de la panne :
  16.                             </legend>
  17.                             <input type="text" id="panne" name="panne" />
  18.                         </fieldset>
  19.                     </p>
  20.                     <p>
  21.                         <fieldset>
  22.                             <legend align="center">
  23.                                 Solution :
  24.                             </legend>
  25.                             <input type="text" id="suggestions" name="suggestions" />
  26.                         </fieldset>
  27.                     </p>
  28.                         <input type="submit" value="Valider" />
  29.                 </form>
  30.                 <a href="http://localhost/laposte/default.php">
  31.                     Revenir à la page daccueil
  32.                 </a>
  33.             </fieldset>
  34.         </div>
  35.     </body>
  36. </html>
  37.  


Ensuite dans ta page valider.php :

Code : Tout sélectionner
  1.  
  2. <html>
  3. <body>
  4. <h1>Validation du formulaire</h1>
  5. <?php
  6. mysql_connect("localhost", "root", "");
  7. mysql_select_db("aide");
  8. // On récupère les données du formulaire
  9. $i = 0;
  10. $panne = mysql_real_escape_string($POST['panne']);
  11. $suggestions = mysql_real_escape_string($POST['suggestions']);
  12.  
  13. $panne_erreur = NULL;
  14. $suggestions_erreur = NULL;
  15. if(empty($panne))
  16. {
  17.        $panne_erreur = "Veillez remplir le champ panne";
  18.        $i++;
  19. }
  20. if(empty($suggestions))
  21. {
  22.        $suggestions_erreur = "Veillez remplir le champ suggestions";
  23.        $i++;
  24. }
  25. if($i == 0)
  26. {
  27.       mysql_query('
  28.       INSERT INTO irgp (id, titre, solution) VALUES ("", "'.$panne.'", "'.$suggestions.'")') or die(mysql_error());
  29. }
  30. else
  31. {
  32.         echo '<h1>Inscription interrompue</h1>';
  33.         echo '<p>Une ou plusieurs erreurs se sont produites pendant l incription</p>';
  34.         echo '<p>'.$i.' erreur(s)</p>';
  35.         echo '<p>'.$panne_erreur.'</p>';
  36.         echo '<p>'.$suggestions_erreur.'</p>';
  37.         echo'<p>Cliquez <a href="./ta page de formulaire.php">ici</a> pour recommencer</p>';
  38. }
  39. mysql_close();
  40. ?>
  41. </body>
  42. </html>
  43.  


J'espère que c'est bon ce que j'ai mi mais ça me semble être la meilleure solution (en plus il y a plus de sécurité).

Statistiques: Posté par darky — Jeu 30 Juin 2011 18:47


]]>
2011-06-30T18:46:27+02:00 2011-06-30T18:46:27+02:00 /viewtopic.php?t=446&p=1646#p1646 <![CDATA[Re: Problème d'incrémentation dans une bdd]]>
1)
Code : Tout sélectionner
  1. <?php
  2.                             mysql_connect("localhost", "root");
  3.                             mysql_select_db("aide");
  4.                             mysql_query("INSERT INTO irgp(id, titre, solution) VALUES(' ','pr','suggestions')");
  5.                            ?>


Remplace par <?php ... ?> on sait jamais des fois qu'il y est un truc quelque part ...


2)
Code : Tout sélectionner
  1. <?php
  2.                             mysql_connect("localhost", "root");
  3.                             mysql_select_db("aide");
  4.                             mysql_query("INSERT INTO irgp(id, titre, solution) VALUES(' ','pr','suggestions')"); ?>



le ' ' , je pense qu'il faudrait mettre un '' , sans espace entre les deux


Voila, je vois pas sinon a part ce qu'a dit Quentin01 ;)

Statistiques: Posté par Anonyme — Jeu 30 Juin 2011 18:46


]]>
2011-06-30T18:46:00+02:00 2011-06-30T18:46:00+02:00 /viewtopic.php?t=446&p=1645#p1645 <![CDATA[Re: Problème d'incrémentation dans une bdd]]> Et sinon c'est normal que tu es que le nom des variables puisque tu enregistre une chaine de caracteres avec leur nom dedans ^^
Il faut mettre le nom des variables donc ici $_POST['......'] ( Je sais plus le nom ).

Statistiques: Posté par Quentin01 — Jeu 30 Juin 2011 18:46


]]>
2011-06-30T18:45:35+02:00 2011-06-30T18:45:35+02:00 /viewtopic.php?t=446&p=1644#p1644 <![CDATA[Problème d'incrémentation dans une bdd]]>

Code : Tout sélectionner
  1.  
  2.     <body bgcolor="#FFFCCC" text="#0000B0">
  3.         <div align="center">
  4.             <fieldset>
  5.                 <strong>Formulaire
  6.                 </strong>
  7.                                 
  8.                 <form action="./validation.php" method="post" onSubmit="return envoi()">
  9.                     <p>
  10.                         <fieldset>
  11.                             <legend align="center">Définition de la panne :
  12.                             </legend>
  13.                             <?php echo $_POST['pr'];
  14.                             
  15.                             ?>
  16.                         </fieldset>
  17.                     </p>
  18.                     <p>
  19.                         <fieldset>
  20.                             <legend align="center">
  21.                                 Solution :
  22.                             </legend>
  23.                             <?php echo $_POST['suggestions'];
  24.                             
  25.                             ?>
  26.                         </fieldset>
  27.                         <input type="submit" value="Valider">
  28.                             <?php
  29.                             mysql_connect("localhost", "root");
  30.                             mysql_select_db("aide");
  31.                             mysql_query("INSERT INTO irgp(id, titre, solution) VALUES(' ','pr','suggestions')");
  32.                             ?>
  33.                         </input>
  34.                     </p>
  35.                 </form>
  36.                 <a href="./default.php">
  37.                     Revenir à la page d'accueil
  38.                 </a>
  39.             </fieldset>
  40.         </div>
  41.     </body>
  42. </html>
  43.  






Merci de me répondre =)

Statistiques: Posté par DJ Kin-C — Jeu 30 Juin 2011 18:45


]]>