problème de slashes et de guillemet

Eléphanteau du PHP | 39 Messages

10 mars 2008, 17:05

Bonjour,

Je suis entrain de faire une gestion de cantine en php et ça fonctionne plutôt pas mal..Par contre j'ai une erreur...

voila .. lorsque je saisie par exemple un "Sauté d'agneau" il m'insert dans la base "Sauté d\'agneau"
Par contre lorsqu'une personne veut commander ce plat ca m'insert dans une autre table "Sauté d\"
Je ne sais pas pourquoi il me fait ca or que je lui demande bien de me mettre "Sauté d'agneau"..

Je vous montre mon code : pour l'insertion dans la BDD

Code : Tout sélectionner

<? session_start(); include("hydrus.php5"); if(hydrus_access_valid_admin($_SESSION['login'],$_SESSION['password'],session_id(),$bdd) == false) { hydrus_utils_redirect("login.php5"); exit(); } ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" <html> <head> <title>Corolle:: Cantine</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <style type="text/css"> <!-- body { margin-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; background-image: url(images/bg.gif); } --> </style> <link href="styles.css" rel="stylesheet" type="text/css"> <style type="text/css"> <!-- #Layer1 { position:absolute; left:257px; top:8px; width:297px; height:77px; z-index:1; } .Style4 { font-size: 12px; font-family: "Segoe UI"; } .Style8 {font-size: 14px; font-family: "Segoe UI"; } --> </style> </head> <body onLoad="MM_preloadImages('images/photos1H.gif','images/photos2H.gif','images/photos3H.gif','images/photos4H.gif')"> <table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td><table width="773" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td><img src="images/header.jpg" width="773" height="270"></td> </tr> <tr> <td background="images/menu.jpg">&nbsp;</td> </tr> <tr> <td><table width="773" border="0" cellspacing="0" cellpadding="0"> <tr> <td><img src="images/topBox.gif" width="773" height="18"></td> </tr> <tr> <td valign="top" background="images/bgBox.gif"><table width="773" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="216" valign="top"><table width="216" border="0" cellspacing="0" cellpadding="0"> <tr> <td class="menu"> <div align="center"> <br> <? hydrus_generate_menu($_SESSION['admin_id'],$bdd); ?>&nbsp;&nbsp;</div></td></tr> <tr> <td height="10"><img src="images/separateur.gif" width="216" height="10"></td> </tr> </table> </td> <td width="27">&nbsp;</td> <td width="500" valign="top"><p><span class="Style4">Ajouter un Menu </span> <form action="./add_menu.php5" method="post" name="ajout_produit" > <p> <?php $error = 0; //Verification des résultats if(isset($_POST)==true && $_POST['valid'] == 1) { if ( strlen($_POST['menu_semaine']) <= 0 || strlen($_POST['menu_jour']) <= 0 || strlen($_POST['menu_entree1']) <= 0 || strlen($_POST['menu_entree2']) <= 0 || strlen($_POST['menu_entree3']) <= 0 || strlen($_POST['menu_entree4']) <= 0 || strlen($_POST['menu_resistance1']) <= 0 || strlen($_POST['menu_resistance2']) <= 0 || strlen($_POST['menu_resistance3']) <= 0 || strlen($_POST['menu_resistance4']) <= 0 || strlen($_POST['menu_resistance5']) <= 0 || strlen($_POST['menu_legume1']) <= 0 || strlen($_POST['menu_legume2']) <= 0 || strlen($_POST['menu_legume3']) <= 0 || strlen($_POST['menu_fromage1']) <= 0 || strlen($_POST['menu_fromage2']) <= 0 || strlen($_POST['menu_fromage3']) <= 0 || strlen($_POST['menu_dessert1']) <= 0 || strlen($_POST['menu_dessert2']) <= 0 || strlen($_POST['menu_dessert3']) <= 0 ) { $error = 1; hydrus_utils_alert("Il y a surement une erreur."); } if($error == 0) { //Insertion des résultats $requete_txt = "INSERT INTO `menu`( `menu_id`, `menu_semaine` , `menu_jour` , `menu_entree1` , `menu_entree2` , `menu_entree3` , `menu_entree4` , `menu_resistance1` , `menu_resistance2` , `menu_resistance3` , `menu_resistance4` , `menu_resistance5` , `menu_legume1` , `menu_legume2` , `menu_legume3` , `menu_fromage1` , `menu_fromage2` , `menu_fromage3` , `menu_dessert1` , `menu_dessert2` , `menu_dessert3` ) VALUES( '', '".addslashes($_POST['menu_semaine'])."', '".addslashes($_POST['menu_jour'])."', '".addslashes($_POST['menu_entree1'])."', '".addslashes($_POST['menu_entree2'])."', '".addslashes($_POST['menu_entree3'])."', '".addslashes($_POST['menu_entree4'])."', '".addslashes($_POST['menu_resistance1'])."' '' '".($_POST['menu_pc1'])."', '".addslashes($_POST['menu_resistance2'])."' '' '".($_POST['menu_pc2'])."', '".addslashes($_POST['menu_resistance3'])."' '' '".($_POST['menu_pc3'])."', '".addslashes($_POST['menu_resistance4'])."' '' '".($_POST['menu_pc4'])."', '".addslashes($_POST['menu_resistance5'])."' '' '".($_POST['menu_pc5'])."', '".addslashes($_POST['menu_legume1'])."', '".addslashes($_POST['menu_legume2'])."', '".addslashes($_POST['menu_legume3'])."', '".addslashes($_POST['menu_fromage1'])."', '".addslashes($_POST['menu_fromage2'])."', '".addslashes($_POST['menu_fromage3'])."', '".addslashes($_POST['menu_dessert1'])."', '".addslashes($_POST['menu_dessert2'])."', '".addslashes($_POST['menu_dessert3'])."')"; $bdd->query($requete_txt); hydrus_utils_alert("Le nouveau repas a été ajouté."); hydrus_utils_redirect("choix_menu.php5"); } } if(isset($_POST['valid']) == false || $_POST['valid'] != 1) { $_POST['menu_semaine'] = ""; $_POST['menu_jour'] = ""; $_POST['menu_entree1'] = ""; $_POST['menu_entree2'] = ""; $_POST['menu_entree3'] = ""; $_POST['menu_entree4'] = ""; $_POST['menu_resistance1'] = ""; $_POST['menu_resistance2'] = ""; $_POST['menu_resistance3'] = ""; $_POST['menu_resistance4'] = ""; $_POST['menu_resistance5'] = ""; $_POST['menu_legume1'] = ""; $_POST['menu_legume2'] = ""; $_POST['menu_legume3'] = ""; $_POST['menu_fromage1'] = ""; $_POST['menu_fromage2'] = ""; $_POST['menu_fromage3'] = ""; $_POST['menu_dessert1'] = ""; $_POST['menu_dessert2'] = ""; $_POST['menu_dessert3'] = ""; } ?> <? print("<a href='choix_menu.php5'>Pr&eacute;c&eacute;dent</a>");?> <input type="hidden" name="valid" value="1" /> </p> <table width="525" border="0" class="Style4"> <tr > <td width="145" ><span class="Style11">Semaine : </span></td> <td ><input type="text" name="menu_semaine" <? print("value=\"".stripslashes($_POST['menu_semaine'])."\" "); ?> maxlength="70" size="40"/></td> <td >&nbsp;</td> </tr> <tr > <td class="Style11">Jour de la Semaine : </td> <td ><input type="text" name="menu_jour" <? print("value=\"".stripslashes($_POST['menu_jour'])."\" "); ?> maxlength="70" size="40"/></td> <td >&nbsp;</td> </tr> <tr > <td class="Style11">Entr&eacute;e N&deg;1 : </td> <td width="274"><input type="text" name="menu_entree1" <? print("value=\"".stripslashes($_POST['menu_entree1'])."\" "); ?> maxlength="70" size="40"/> </td> <td width="92" >&nbsp;</td> </tr> <tr > <td class="Style11">Entr&eacute;e N&deg;2 :</td> <td><input type="text" name="menu_entree2" <? print("value=\"".stripslashes($_POST['menu_entree2'])."\" "); ?> maxlength="70" size="40"/></td> <td >&nbsp;</td> </tr> <tr class="Style8"> <td class="Style11">Entr&eacute;e N&deg;3 : </td> <td><input type="text" name="menu_entree3" <? print("value=\"".stripslashes($_POST['menu_entree3'])."\" "); ?> maxlength="70" size="40"/></td> <td >&nbsp;</td> </tr> <tr class="Style8"> <td class="Style11">Entr&eacute;e N&deg;4 : </td> <td><input type="text" name="menu_entree4" <? print("value=\"".stripslashes($_POST['menu_entree4'])."\" "); ?> maxlength="70" size="40"/></td> <td >&nbsp;</td> </tr> <tr class="Style8"> <td class="Style11">Plat de R&eacute;sistance N&deg;1 : </td> <td><input type="text" name="menu_resistance1" <? print("value=\"".$_POST['menu_resistance1']."\" "); ?> maxlength="70" size="40"/></td> <td ><div align="center"> (Pc) <input type="checkbox" name="menu_pc1" value="(Plat complet)" id="radio1" /> <? $menu_pc1 = $_GET['menu_pc1']; $_POST['menu_pc1'] = $menu_pc1; ?> </div></td> </tr> <tr class="Style8"> <td class="Style11">Plat de R&eacute;sistance N&deg;2 : </td> <td><input type="text" name="menu_resistance2" <? print("value=\"".stripslashes($_POST['menu_resistance2'])."\" "); ?> maxlength="70" size="40" /> </td> <td ><div align="center"> (Pc) <input type="checkbox" name="menu_pc2" value="(Plat complet)" id="radio2" /> <? $menu_pc2 = $_GET['menu_pc2']; $_POST['menu_pc2'] = $menu_pc2; ?> </div></td> </tr> <tr class="Style8"> <td class="Style11">Plat de R&eacute;sistance N&deg;3 : </td> <td><input type="text" name="menu_resistance3" <? print("value=\"".stripslashes($_POST['menu_resistance3'])."\" "); ?> maxlength="70" size="40" /></td> <td ><div align="center"> (Pc) <input type="checkbox" name="menu_pc3" value="(Plat complet)" id="radio3" /> <? $menu_pc3 = $_GET['menu_pc3']; $_POST['menu_pc3'] = $menu_pc3; ?> </div></td> </tr> <tr class="Style8"> <td class="Style11">Plat de R&eacute;sistance N&deg;4 : </td> <td><input type="text" name="menu_resistance4" <? print("value=\"".stripslashes($_POST['menu_resistance4'])."\" "); ?> maxlength="70" size="40" /></td> <td ><div align="center"> (Pc) <input type="checkbox" name="menu_pc4" value="(Plat complet)" id="radio4" /> <? $menu_pc4 = $_GET['menu_pc4']; $_POST['menu_pc4'] = $menu_pc4; ?> </div></td> </tr> <tr class="Style8"> <td class="Style11">Plat de R&eacute;sistance N&deg;5 : </td> <td><input type="text" name="menu_resistance5" <? print("value=\"".stripslashes($_POST['menu_resistance5'])."\" "); ?> maxlength="70" size="40" /> </td> <td ><div align="center"> (Pc) <input type="checkbox" name="menu_pc5" value="(Plat complet)" id="radio5" /> <? $menu_pc5 = $_GET['menu_pc5']; $_POST['menu_pc5'] = $menu_pc5; ?> </div></td> </tr> <tr class="Style8"> <td class="Style11">L&eacute;gumes N&deg;1 : </td> <td ><input type="text" name="menu_legume1" <? print("value=\"".stripslashes($_POST['menu_legume1'])."\" "); ?> maxlength="70" size="40" /> </td> <td >&nbsp;</td> </tr> <tr class="Style8"> <td class="Style11">L&eacute;gumes N&deg;2 : </td> <td><input type="text" name="menu_legume2" <? print("value=\"".stripslashes($_POST['menu_legume2'])."\" "); ?> maxlength="70" size="40" /> </td> <td >&nbsp;</td> </tr> <tr class="Style8"> <td class="Style11">L&eacute;gumes N&deg;3 : </td> <td><input type="text" name="menu_legume3" <? print("value=\"".stripslashes($_POST['menu_legume3'])."\" "); ?> maxlength="70" size="40" /> </td> <td >&nbsp;</td> </tr> <tr class="Style8"> <td class="Style11">Fromage N&deg;1 : </td> <td><input type="text" name="menu_fromage1" <? print("value=\"".stripslashes($_POST['menu_fromage1'])."\" "); ?> maxlength="70" size="40" /> </td> <td >&nbsp;</td> </tr> <tr class="Style8"> <td class="Style11">Fromage N&deg;2 : </td> <td><input type="text" name="menu_fromage2" <? print("value=\"".stripslashes($_POST['menu_fromage2'])."\" "); ?> maxlength="70" size="40" /> </td> <td >&nbsp;</td> </tr> <tr class="Style8"> <td class="Style11">Fromage N&deg;3 : </td> <td><input type="text" name="menu_fromage3" <? print("value=\"".stripslashes($_POST['menu_fromage4'])."\" "); ?> maxlength="70" size="40" /> </td> <td >&nbsp;</td> </tr> <tr class="Style8"> <td class="Style11">Dessert N&deg;1 : </td> <td><input type="text" name="menu_dessert1" <? print("value=\"".stripslashes($_POST['menu_dessert1'])."\" "); ?> maxlength="70" size="40" /> </td> <td >&nbsp;</td> </tr> <tr class="Style8"> <td class="Style11">Dessert N&deg;2 : </td> <td><input type="text" name="menu_dessert2" <? print("value=\"".stripslashes($_POST['menu_dessert2'])."\" "); ?> maxlength="70" size="40" /> </td> <td >&nbsp;</td> </tr> <tr class="Style8"> <td class="Style11">Dessert N&deg;3 : </td> <td><input type="text" name="menu_dessert3" <? print("value=\"".stripslashes($_POST['menu_dessert3'])."\" "); ?> maxlength="70" size="40" /> </td> <td >&nbsp;</td> </tr> <tr > <td colspan='3'><center> <h5> <input name="submit" type="submit" value="Ajouter le menu"/> </h5> </center></td> </tr> </table> </form></td> <td width="30">&nbsp;</td> </tr> </table> </td> </tr> <tr> <td><img src="images/FootBox.gif" width="773" height="25"></td> </tr> <tr> <td><div align="center"><span class="texte">Design par KERLOCH Jean-Philip </span></div></td> </tr> </table></td> </tr> </table> <p align="center" class="texte">&nbsp;</p></td> </tr> </table> </body> </html>
Le code lorsqu'une personne commande un menu:

Code : Tout sélectionner

<? session_start(); include("hydrus.php5"); if(hydrus_access_valid_admin($_SESSION['login'],$_SESSION['password'],session_id(),$bdd) == false) { hydrus_utils_redirect("login.php5"); exit(); } /* Verif si pas deja pris un repas normal ...*/ $requete_txt = "SELECT admin_id FROM `menu_utilisateur` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { if ($result[$i][0] == $_SESSION['login']) { hydrus_utils_alert("Vous avez deja pris un repas pour le ".$_GET['jour']." de la semaine ".$_GET['semaine'].". Appellez Jean-Francois pour le modifier ou le supprimer."); hydrus_utils_redirect("commande_menu.php5"); } } /* Verif si pas deja pris un repas régime ...*/ $requete_txt = "SELECT admin_id FROM `menu_diet_utilisateur` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { if ($result[$i][0] != '') { hydrus_utils_alert("Vous avez deja pris un repas pour le ".$_GET['jour']." de la semaine ".$_GET['semaine']." pour un repas Régime. Appellez Jean-Francois pour le modifier ou le supprimer."); hydrus_utils_redirect("commande_menu.php5"); } } $error = 0; if(isset($_POST)==true && $_POST['valid'] == 1) { if (strlen($_POST['menu_entree']) <= 0 && strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_legume']) <= 0 && strlen($_POST['menu_fromage']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Tous les champs sont vide ..."); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_legume']) <= 0 && strlen($_POST['menu_fromage']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur2"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_entree']) <= 0 && strlen($_POST['menu_legume']) <= 0 && strlen($_POST['menu_fromage']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur3"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_entree']) <= 0 && strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_fromage']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur4"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_entree']) <= 0 && strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_legume']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur5"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_entree']) <= 0 && strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_legume']) <= 0 && strlen($_POST['menu_fromage']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur6"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_legume']) <= 0 && strlen($_POST['menu_fromage']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur7"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_fromage']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur8"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_legume']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur9"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_legume']) <= 0 && strlen($_POST['menu_fromage']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur10"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_entree']) <= 0 && strlen($_POST['menu_fromage']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur11"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_entree']) <= 0 && strlen($_POST['menu_legume']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur12"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } /*elseif ( strlen($_POST['menu_entree']) <= 0 && strlen($_POST['menu_legume']) <= 0 && strlen($_POST['menu_fromage']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur13"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } }*/ elseif ( strlen($_POST['menu_entree']) <= 0 && strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur14"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_entree']) <= 0 && strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_fromage']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur15"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_entree']) <= 0 && strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_legume']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur16"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_fromage']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur17"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_entree']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur18"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_legume']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur19"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } /* elseif ( strlen($_POST['menu_entree']) <= 0 && strlen($_POST['menu_legume']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur20"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } }*/ elseif ( strlen($_POST['menu_legume']) <= 0 && strlen($_POST['menu_fromage']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur21"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } /*elseif ( strlen($_POST['menu_fromage']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur22"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } }*/ elseif ( strlen($_POST['menu_resistance']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur23"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_legume']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur24"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } elseif ( strlen($_POST['menu_fromage']) <= 0 && strlen($_POST['menu_dessert']) <= 0 ) {$error = 1; { hydrus_utils_alert("Il y a surement une erreur25"); hydrus_utils_redirect ("commande_menu2.php5?semaine='".$_GET['semaine']."'&jour='".$_GET['jour']."'"); } } if($error == 0) { $requete_txt = " INSERT INTO `menu_utilisateur` (`menu_id`, `menu_semaine`, `menu_jour`, `admin_id`, `menu_entree`, `menu_resistance`, `menu_legume`, `menu_fromage`, `menu_dessert`) VALUES( '','".$_GET['semaine']."', '".$_GET['jour']."', '".($_SESSION['login'])."', '".$_POST['menu_entree']."', '".$_POST['menu_resistance']."', '".$_POST['menu_legume']."', '".$_POST['menu_fromage']."', '".$_POST['menu_dessert']."')"; $bdd->query($requete_txt); ////// Suppression du legume si plat complet $requete_txt = "SELECT menu_resistance from menu_utilisateur where menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' AND admin_id='".($_SESSION['login'])."' AND menu_resistance LIKE ('%Plat complet%') "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { if ($result[$i][0] != '' ) { $requete_txt = " UPDATE `menu_utilisateur` SET `menu_legume` = '' where menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' AND admin_id = '".$_SESSION['login']."' "; $bdd->query($requete_txt); } } hydrus_utils_alert("Votre commande a bien été prise en compte."); hydrus_utils_redirect("commande_menu.php5"); } } ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" <html> <head> <title>Corolle:: Cantine</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <style type="text/css"> <!-- body { margin-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; background-image: url(images/bg.gif); } --> </style> <link href="styles.css" rel="stylesheet" type="text/css"> <style type="text/css"> <!-- #Layer1 { position:absolute; left:257px; top:8px; width:297px; height:77px; z-index:1; } .Style6 {font-family: "Segoe UI"} .Style8 {font-size: 12} --> </style> </head> <body onLoad="MM_preloadImages('images/photos1H.gif','images/photos2H.gif','images/photos3H.gif','images/photos4H.gif')"> <table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td><table width="773" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td><img src="images/header.jpg" width="773" height="270"></td> </tr> <tr> <td background="images/menu.jpg">&nbsp;</td> </tr> <tr> <td><table width="773" border="0" cellspacing="0" cellpadding="0"> <tr> <td><img src="images/topBox.gif" width="773" height="18"></td> </tr> <tr> <td valign="top" background="images/bgBox.gif"><table width="773" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="216" valign="top"><table width="216" border="0" cellspacing="0" cellpadding="0"> <tr> <td class="menu"> <div align="center"> <br> <? hydrus_generate_menu($_SESSION['admin_id'],$bdd); ?>&nbsp;&nbsp;</div></td></tr> <tr> <td height="10"><img src="images/separateur.gif" width="216" height="10"></td> </tr> </table> </td> <td width="27">&nbsp;</td> <td width="500" valign="top"><p><form method="post"> <input type="hidden" name="valid" value="1" /> <table width="488" border="1"> <tr class="Style4"> <td height="1"><span class="Style27 Style6 Style8">Semaine:</span></td> <td><label class="Style27 Style6 Style8"><? echo $_GET['semaine']; ?> </label></td> </tr> <tr class="Style4"> <td height="1"><span class="Style27 Style6 Style8">Jour:</span></td> <td><label class="Style27 Style6 Style8"><? echo $_GET['jour']; ?></label></td> </tr> <tr class="Style4"> <td width="145" height="68"><span class="Style27 Style6 Style8">Entr&eacute;es:</span></td> <td width="386"><span class="Style27 Style6 Style8"> <label> <? $requete_txt = "SELECT menu_entree1 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_entree = $result[$i][0]; print("<input type='radio' name='menu_entree' value='".$menu_entree."' >"); echo stripslashes($result[$i][0]); } ?> </label> <label> <br /> <? $requete_txt = "SELECT menu_entree2 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_entree = $result[$i][0]; print("<input type='radio' name='menu_entree' value='".$menu_entree."' >"); echo stripslashes($result[$i][0]); } ?> <br /> </label> <label> <? $requete_txt = "SELECT menu_entree3 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_entree = $result[$i][0]; print("<input type='radio' name='menu_entree' value='".$menu_entree."' >"); echo stripslashes($result[$i][0]); } ?> <br /> </label> <label> <? $requete_txt = "SELECT menu_entree4 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_entree = $result[$i][0]; print("<input type='radio' name='menu_entree' value='".$menu_entree."' >"); echo stripslashes($result[$i][0]); } ?> </label> </span></td> </tr> <tr class="Style4"> <td height="73"><span class="Style27 Style6 Style8">Plat de R&eacute;sistance: </span></td> <td><span class="Style27 Style6 Style8"> <label> <? $requete_txt = "SELECT menu_resistance1 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $resistance = $result[$i][0]; print("<input type='radio' name='menu_resistance' value='".$resistance."' >"); echo stripslashes($result[$i][0]); } ?> </label> <br /> <label> <? $requete_txt = "SELECT menu_resistance2 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $resistance = $result[$i][0]; print("<input type='radio' name='menu_resistance' value='".$resistance."' >"); echo stripslashes($result[$i][0]); } ?> </label> <label><br /> <? $requete_txt = "SELECT menu_resistance3 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $resistance = $result[$i][0]; print("<input type='radio' name='menu_resistance' value='".$resistance."' >"); echo stripslashes($result[$i][0]); } ?><br /> </label> <label> <? $requete_txt = "SELECT menu_resistance4 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $resistance = $result[$i][0]; print("<input type='radio' name='menu_resistance' value='".$resistance."' >"); echo stripslashes($result[$i][0]); } ?> </label> <br /> <label> <? $requete_txt = "SELECT menu_resistance5 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $resistance = $result[$i][0]; print("<input type='radio' name='menu_resistance' value='".$resistance."' >"); echo stripslashes($result[$i][0]); } ?> </label> <label></label> </span></td> </tr> <tr class="Style4"> <td height="58"><span class="Style27 Style6 Style8">L&eacute;gumes: </span></td> <td><span class="Style27 Style6 Style8"> <label></label> <label> <? $requete_txt = "SELECT menu_legume1 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_legume = $result[$i][0]; print("<input type='radio' name='menu_legume' value='".$menu_legume."' >"); echo stripslashes($result[$i][0]); } ?> </label> <label> <br /> <? $requete_txt = "SELECT menu_legume2 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_legume = $result[$i][0]; print("<input type='radio' name='menu_legume' value='".$menu_legume."' >"); echo stripslashes($result[$i][0]); } ?> </label> <label> <br /> <? $requete_txt = "SELECT menu_legume3 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_legume = $result[$i][0]; print("<input type='radio' name='menu_legume' value='".$menu_legume."' >"); echo stripslashes($result[$i][0]); } ?> </label> </span></td> </tr> <tr class="Style4"> <td height="58"><span class="Style27 Style6 Style8">Fromage : </span></td> <td><span class="Style27 Style6 Style8"> <label> <? $requete_txt = "SELECT menu_fromage1 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_fromage = $result[$i][0]; print("<input type='radio' name='menu_fromage' value='".$menu_fromage."' >"); echo stripslashes($result[$i][0]); } ?> <br /> </label> <label> <? $requete_txt = "SELECT menu_fromage2 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_fromage = $result[$i][0]; print("<input type='radio' name='menu_fromage' value='".$menu_fromage."' >"); echo stripslashes($result[$i][0]); } ?> </label> <label> <br /> <? $requete_txt = "SELECT menu_fromage3 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_fromage = $result[$i][0]; print("<input type='radio' name='menu_fromage' value='".$menu_fromage."' >"); echo stripslashes($result[$i][0]); } ?> </label> </span></td> </tr> <tr class="Style4"> <td height="58"><span class="Style27 Style6 Style8">Dessert: </span></td> <td><span class="Style27 Style6 Style8"> <label> <? $requete_txt = "SELECT menu_dessert1 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_dessert = $result[$i][0]; print("<input type='radio' name='menu_dessert' value='".$menu_dessert."' >"); echo stripslashes($result[$i][0]); } ?> <br /> </label> <label> <? $requete_txt = "SELECT menu_dessert2 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_dessert = $result[$i][0]; print("<input type='radio' name='menu_dessert' value='".$menu_dessert."' >"); echo stripslashes($result[$i][0]); } ?> </label> <label> <br /> <? $requete_txt = "SELECT menu_dessert3 FROM `menu` WHERE menu_jour = '".$_GET['jour']."' AND menu_semaine = '".$_GET['semaine']."' "; $result = $bdd->result_to_array($bdd->query($requete_txt)); for($i=0;$i<count($result);$i++) { $menu_dessert = $result[$i][0]; print("<input type='radio' name='menu_dessert' value='".$menu_dessert."' >"); echo stripslashes($result[$i][0]); } ?> </label> </span></td> </tr> <tr> <td height="28"><center class="Style27 Style6 Style8"> <h5>&nbsp;</h5> </center></td> <td height="28"><input name="submit" type="submit" value="Je valide"/></td> </tr> </table> </form></td> <td width="30">&nbsp;</td> </tr> </table> </td> </tr> <tr> <td><img src="images/FootBox.gif" width="773" height="25"></td> </tr> <tr> <td><div align="center"><span class="texte">Design par KERLOCH Jean-Philip </span></div></td> </tr> </table></td> </tr> </table> <p align="center" class="texte">&nbsp;</p></td> </tr> </table> </body> </html>

d0m
Mammouth du PHP | 1141 Messages

10 mars 2008, 17:16

Salut,

essaie d'utiliser mysql_escape_string au lien d'ajouter des slashes :
INSERT..
INTO...
VALUES(
'',
'".mysql_escape_string($_POST['menu_semaine'])."',
....

Eléphanteau du PHP | 39 Messages

10 mars 2008, 17:21

Toujours pareil... s'auf qu'il ne me met plus le "\"
Merci de votre aide.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

10 mars 2008, 17:33

A savoir : lorsque tu insères une chaine dans une base de données, il faut délimiter celle-ci par des apostrophes (MySQL tolère les guillemets, mais comme c'est le seul, vaut mieux éviter et prendre de bonnes habitudes dès le début :))

Si jamais tu insères une chaine contenant une apostrophe, il faut protéger celle-ci avec un antislash pour qu'elle ne soit pas considérée comme marquant la fin de la chaine.

Côté php, il existe une directive appellée "magic quote" qui, si elle est activée (ce qui est généralement le cas par défaut sur beaucoup de serveur) va pratiquer l'équivalent d'un addslashes() sur toutes les données reçues en GET et en POST par php (le but étant de te permettre d'intégrer directement ta valeur dans ta requête sql)

Le fait de faire appel ensuite à addslash() ou mysql_real_escape_string() sur une chaine protégée, va donc reprotéger l'apostrophe, mais également l'antislash : \\\' du coup en base, tu te retrouves avec la chaine qui a été protégée : \'

L'idéal est donc de détecter si les magic quotes sont activées ou pas (get_magic_quotes_gpc()). Si elles le sont, faire appel à la fonction stripslashes() pour supprimer les "\" qu'elle a pu ajouter, sinon, bah ne rien faire :).
Ainsi, tu peux utiliser la fonction mysql_real_escape_string() pour protéger tes chaines sans risque de doubler la protection :)


Ps : lorsque tu postes du code php sur le forum, utilise les balises [ php ] plutôt que [ code ], ca met le code en couleur et c'est beaucoup plus pratique à relire ;)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

d0m
Mammouth du PHP | 1141 Messages

10 mars 2008, 17:35

tu as déjà éliminé un problème, celui des slashes.

Pour la partie manquante ça vient des guillemets :
par exemple :
print("<input type='radio' name='menu_resistance'  value='".$resistance."' >");
On va se comporter comme PHP et remplacer $resistance par la chaine Sauté d'agneau :
il va donc afficher :

Code : Tout sélectionner

<input type='radio' name='menu_resistance' value='Sauté d'agneau' >
comme tu utilises les simples quotes ' (apostrophes) pour délimiter ton champ value, la navigateur en interpretant pense que la chaine s'arrête à l'apostrophe suivante, c'est à dire que la valeur est :
Sauté d.
Il faut échapper les quotes dans la chaine.

Ce que je te conseille de faire c'est de ne pas afficher le code html par du PHP mais de l'écrire directement en sortant des balises <?php ?>:
....
for($i=0;$i<count($result);$i++)
{
$resistance = $result[$i][0];?>
<!-- on écrit directement le html sans echo/print -->
<input type="radio" name="menu_resistance" value="<?php echo $resistance;?>" >
<?php echo stripslashes($result[$i][0]);
}
....

Eléphanteau du PHP | 39 Messages

11 mars 2008, 09:26

Merci de ta réponse et d'ailleurs cela fonctionne a merveille ..
Par contre maintenant j'ai un autre bug dans une autre page qui me permet de totalisé les repas !!
ile ne me manque plus que ca et c'est fini mon programme. Mais j'ai toujours ce pb avec ces guillemet !! dans une requette et j'ai essayé de faire comme toi mais je n'ai pas reussi !! Donc D0M si tu pouvais me filait un coup de main ca serait sympa!

voici le fragment de code qui me pose problème avec ces maudit guillemet :
<? $requete_txt1 ="SELECT distinct menu_resistance1 FROM menu where menu_semaine='".$_POST['semaine']."' and menu_jour= 'Mardi' "; 
$result1 = $bdd->result_to_array($bdd->query($requete_txt1));
for($i=0;$i<count($result1);$i++)
echo $result1[$i][0]; ?>
<?
$requete_txt1 ="SELECT menu_resistance1 FROM menu where menu_semaine='".$_POST['semaine']."' and menu_jour= 'Mardi' "; 
$result1 = $bdd->result_to_array($bdd->query($requete_txt1));
for($i=0;$i<count($result1);$i++)
{
$var= $result1[$i][0];
$requete_txt ="SELECT menu_resistance,COUNT( menu_resistance ) FROM menu_utilisateur where menu_semaine='".$_POST['semaine']."' and menu_jour= 'Mardi' and menu_resistance='".$var."' GROUP BY menu_resistance ";
$result = $bdd->result_to_array($bdd->query($requete_txt));
for($i=0;$i<count($result);$i++)
{
echo $result[$i][1];
}
}
?>
Merci a tous ..

Cordialement

d0m
Mammouth du PHP | 1141 Messages

11 mars 2008, 09:40

Pour éviter les soucis avec les requêtes, un conseil :
utilise toujours mysql_real_escape_string().
Cette fonction est justement faite pour éviter les problèmes que tu rencontres.

Dès que tu dois insérer une variable PHP dans une chaine de requête SQL, entoure la variable de mysql_real_escape_string().
$requete_txt1 ="SELECT distinct menu_resistance1 FROM menu where menu_semaine='".mysql_real_escape_string($_POST['semaine'])."' and menu_jour= 'Mardi' ";

Eléphanteau du PHP | 39 Messages

11 mars 2008, 09:56

merci tout est ok maintenant !!
encore100000000000000 Merci :)

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]