Petite erreur mais où ?
Résolu
Lucryio
Messages postés
206
Date d'inscription
Statut
Membre
Dernière intervention
-
Lucryio Messages postés 206 Date d'inscription Statut Membre Dernière intervention -
Lucryio Messages postés 206 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je reviens vers vous pour le même module de capture car, j'ai tous revu pour changer les checkbox par exemple en liste déroulante.
Alors tous fonctionne, la capture, l'enregistrement dans la base SAUF 1 chose, la suppression de l'objet utilisé par le membre.
Et une toute petite chose aussi c'est la phrase de l'echo "Dommage le pokemon c'est enfuie" et "Tu as capturé ce pokemon !" est visible même sans lancer de ball.
Voici mon code tous entier de ma page :
Donc si quelqu'un veux bien m'aider, se ne serais pas de refus ;)
Merci par avance.
PS : petite précision, j'ai fais un echo de $choix, il me rapporte 1 donc ce qui correspond uniquement au premier choix de ball.
Je reviens vers vous pour le même module de capture car, j'ai tous revu pour changer les checkbox par exemple en liste déroulante.
Alors tous fonctionne, la capture, l'enregistrement dans la base SAUF 1 chose, la suppression de l'objet utilisé par le membre.
Et une toute petite chose aussi c'est la phrase de l'echo "Dommage le pokemon c'est enfuie" et "Tu as capturé ce pokemon !" est visible même sans lancer de ball.
Voici mon code tous entier de ma page :
<div id="Peche"> <a href="">Rafraichir</a> <?php $map = "Nazaris"; ?> <div id="curseur" class="infobulle"></div> <table style="border:0px; padding:0px; margin:0px;"> <tr> <td> <?php $meteomania = $bdd->query("SELECT * FROM meteo"); $meteo = $meteomania->fetch(); if($meteo['temps'] == 'pluie'){ $tps = "pluvieux"; }else if($meteo['temps'] == 'brume'){ $tps = "brumeux"; }else{ $tps = "bleu";} if($heure >= 7 && $heure < 20){ echo '<img src="images/contenu/soleil.png"/>'; $periode = "jour"; }else{ echo '<img src="images/contenu/lune.png"/>'; $periode = "nuit";} ?> </td> <td> Il est <b><?php echo $heure2; ?></b>. Il fait <b><?php echo $periode; ?></b> à <b><?php echo $map; ?></b>.<br /> La température est estimée à <b><?php echo $meteo['degre']; ?></b>°C sous un ciel <b><?php echo $tps; ?></b>. </td> </tr> </table><br /><br /> <?php if($map == 'Nazaris') /* On utilise le fichier index2.php pour rediriger le membre vers sa localisation */{ if($heure >= 7 && $heure < 20){ if($tps == "pluvieux"){ echo '<img src="images/maps/'.$map.'_pluie.gif" Usemap="#'.$map.'" style="overflow: scroll;border: 1px solid black;"/>'; }else if($tps == "brumeux"){ echo '<img src="images/maps/'.$map.'_brume.png" Usemap="#'.$map.'" style="overflow: scroll;border: 1px solid black;"/>'; }else{ echo '<img src="images/maps/'.$map.'.png" Usemap="#'.$map.'" style="overflow: scroll;border: 1px solid black;"/>';} ?> <map name="<?php echo $map; ?>"> <?php }else{ if($tps == "pluvieux") { echo '<img src="images/maps/nuit/'.$map.'_pluie.gif" Usemap="#'.$map.'" style="overflow: scroll;border: 1px solid black;"/>'; }else if($tps == "brumeux"){ echo '<img src="images/maps/nuit/'.$map.'_brume.png" Usemap="#'.$map.'" style="overflow: scroll;border: 1px solid black;"/>'; }else{ echo '<img src="images/maps/nuit/'.$map.'.png" Usemap="#'.$map.'" style="overflow: scroll;border: 1px solid black;"/>';} ?> <map name="<?php echo $map; ?>"> <?php } include("coords.php"); ?> </map> <?php }else{ echo '<b><font color="red">Erreur de localisation. Cette map n\'existe pas.</font></b><br /><br /> Si cette erreur <b>persiste</b> :<br /> Veuillez contacter <b>l\'Administration</b> pour vous déplacer sur une autre map.';} $rrd = $bdd->query("UPDATE pages_vues SET peche = peche + 1"); $nbr = 1; if ($periode = "jour"){ if ($tps = 'brumeux'){ $sql45 = $bdd->query("SELECT * FROM peche WHERE map='Nazaris' AND periode='jour' AND periode3='brume' ORDER BY RAND()");} else { $sql45 = $bdd->query("SELECT * FROM peche WHERE map='Nazaris' AND periode='jour' ORDER BY RAND()");}} elseif ($periode = "nuit");{ if ($tps ='brumeux'){ $sql45 = $bdd->query("SELECT * FROM peche WHERE map='Nazaris' AND periode2='nuit' AND periode3='brume' ORDER BY RAND()");} else { $sql45 = $bdd->query("SELECT * FROM peche WHERE map='Nazaris' AND periode2='nuit' ORDER BY RAND()");}} ?><br/><br/> <table><tr>Venez pêcher toutes sortes de Pokemon aquatique. Certains d'entre eux peuvent même être Shiney</tr></br> <tr> <?php //Récupération "propre" des variables while(($don = $sql45->fetch()) && ($nbr <= 1)){ $nbr++; $sexe = rand(1,2); if ($sexe == 1){ $sexe2 = 'Male';} elseif ($sexe == 2) {$sexe2 = 'Femelle';} else {$sexe = '';} if($map == "Nazaris"){ $niveau = rand(2,5);} $randshiney = rand(1,8192); if($randshiney == 1) {$shiney = "shiney"; }else{ $shiney = "";} } $taux_capture1 = rand(1 , 100); $taux_capture2 = rand(1 , 100); $taux_capture3 = rand(1 , 100); $taux_capture4 = rand(1 , 100); $taux1 = $taux_capture1; $taux2 = $taux_capture2; $taux3 = $taux_capture3; $taux4 = $taux_capture4; $s = $bdd->query("SELECT COUNT(*) FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='1'")->fetchColumn(); $sq = $bdd->query("SELECT COUNT(*) FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='2'")->fetchColumn(); $sql = $bdd->query("SELECT COUNT(*) FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='3'")->fetchColumn(); $sqle = $bdd->query("SELECT COUNT(*) FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='4'")->fetchColumn(); $OK = isset($_POST['selec_ball']) ? $_POST['cap_poke'] : ''; if (isset($OK)) // on affiche si le formulaire a été validé. { // mettre la valeur saisie dans une variable locale $choix=$_POST['selec_ball']; if ($choix = '1'){ if ($taux1 <= 20){ $insert_pok = $bdd->exec("INSERT INTO transfertspokemon VALUES('', '".$ID."', '".$don['no']."', '".$niveau."', '25', '25', '0', '25', '".$sexe."', '0', '".$shiney."', '', '".$time."', 'Nazaris', '7', '0', '', '', '', '')"); $sql = $bdd->exec("DELETE FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='".$choix."' LIMIT 1"); echo "Bravo ! Tu as capturé ce pokemon ! ";} else{ $sql = $bdd->exec("DELETE FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='".$choix."' LIMIT 1"); echo "Dommage le pokemon c'est enfuie";}} elseif ($choix = '2'){ if ($taux2 <= 50){ $insert_pok = $bdd->exec("INSERT INTO transfertspokemon VALUES('', '".$ID."', '".$don['no']."', '".$niveau."', '25', '25', '0', '25', '".$sexe."', '0', '".$shiney."', '', '".$time."', 'Nazaris', '7', '0', '', '', '', '')"); $sql = $bdd->exec("DELETE FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='".$choix."' LIMIT 1"); echo "Bravo ! Tu as capturé ce pokemon ! ";} else{ $sql = $bdd->exec("DELETE FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='".$choix."' LIMIT 1"); echo "Dommage le pokemon c'est enfuie";}} elseif ($choix = '3'){ if ($taux3 <= 80){ $insert_pok = $bdd->exec("INSERT INTO transfertspokemon VALUES('', '".$ID."', '".$don['no']."', '".$niveau."', '25', '25', '0', '25', '".$sexe."', '0', '".$shiney."', '', '".$time."', 'Nazaris', '7', '0', '', '', '', '')"); $sql = $bdd->exec("DELETE FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='".$choix."' LIMIT 1"); echo "Bravo ! Tu as capturé ce pokemon ! ";} else{ $sql = $bdd->exec("DELETE FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='".$choix."' LIMIT 1"); echo "Dommage le pokemon c'est enfuie";}} elseif ($choix = '4'){ if ($taux4 <=100) { $insert_pok = $bdd->exec("INSERT INTO transfertspokemon VALUES('', '".$ID."', '".$don['no']."', '".$niveau."', '25', '25', '0', '25', '".$sexe."', '0', '".$shiney."', '', '".$time."', 'Nazaris', '7', '0', '', '', '', '')"); $sql = $bdd->exec("DELETE FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='".$choix."' LIMIT 1"); echo "Bravo ! Tu as capturé ce pokemon ! ";} else{ $sql = $bdd->exec("DELETE FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='".$choix."' LIMIT 1"); echo "Dommage le pokemon c'est enfuie";}} } ?> <td> <img src="<?php echo $url; ?>images/pokemon/<?php echo $shiney; ?>/<?php echo $don['no']; ?>.png"/><br/> <?php echo utf8_decode($don['nom']); ?></b> <span style="color: <?php echo $color_shiney; ?>;"><?php echo $shiney; ?></span><br/> <b>Niveau <?php echo $niveau; ?></b></br> <b>Sexe</b> : <?php echo utf8_decode($sexe2); ?></br> <b>Type : <img src="images/type/<?php echo $don['type'];?>.png" /><img src="images/type/<?php echo $don['type2'];?>.png" /></b> <form action="" method="POST"><br/> <input type="hidden" value="<?php echo $niveau; ?>" name="niveau"/> <input type="hidden" value="<?php echo $shiney; ?>" name="shiney"/> <input type="hidden" value="<?php echo $don['no']; ?>" name="no"/> <select name="selec_ball"> <?php if ($s >= 1 ){ ?> <option value="1"> PokeBall (<?php echo $s ; ?>)</option> <?php } else {} if ($sq >= 1 ){ ?> <option value="2"> SuperBall (<?php echo $sq ; ?>) </option> <?php } else {} if ($sql >= 1 ){ ?> <option value="3"> HyperBall (<?php echo $sql ; ?>) </option> <?php } else {} if ($sqle >= 1 ){ ?> <option value="4"> MasterBall (<?php echo $sqle ; ?>) </option> <?php } else {} ?> </select> </br><input type="submit" value="Capturer !" name="cap_poke" style="cursor:pointer; padding:5px 20px; background-color:gold; border:dotted 5px red; border-radius:15px;" /> </form> </td> </tr></table> </div>
Donc si quelqu'un veux bien m'aider, se ne serais pas de refus ;)
Merci par avance.
PS : petite précision, j'ai fais un echo de $choix, il me rapporte 1 donc ce qui correspond uniquement au premier choix de ball.
A voir également:
- Petite erreur mais où ?
- Petite amie virtuelle en français gratuit - Accueil - Intelligence artificielle
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Petite croix snap - Forum Snapchat
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
3 réponses
Bon...
Ton code commencait franchement à me saouler .....
Voici comment le présenter (l'organiser) PROPREMENT !
Il faut séparer les TRAITEMENTS PHP ... du HTML .....
Ca le rend beaucoup plus lisible et donc... plus facile à déboguer en cas de besoin.
Je te laisse le reprendre, vérifier qu'il fonctionne toujours (sinon, j'ai pu légèrement me tromper en essayer de reprendre ton code ( vu qu'il était franchement imbitable) .....
et revenir vers nous si tu as encore des soucis.
(Par contre... s'il te plait ..... Essayes vraiment d'être le plus clair et précis dans la rédaction de tes questions.... )
Cordialement,
Jordane
Ton code commencait franchement à me saouler .....
Voici comment le présenter (l'organiser) PROPREMENT !
<?php // ICI la partie PHP de ta page // (les variables, le traitement du submit, les requêtes.... ) //------------------------------------------------------------------------// $map = "Nazaris"; $meteomania = $bdd->query("SELECT * FROM meteo"); $meteo = $meteomania->fetch(); //temps switch($meteo['temps']){ case 'pluie': $tps = "pluvieux"; break; case 'brume': $tps = "brumeux"; break; default: $tps = "bleu"; break; } // période if($heure >= 7 && $heure < 20){ $img_periode = '<img src="images/contenu/soleil.png"/>'; $periode = "jour"; }else{ $img_periode = '<img src="images/contenu/lune.png"/>'; $periode = "nuit"; } //----------------------------------------------------------------------------------// //requêtes //----------------------------------------------------------------------------------// $rrd = $bdd->query("UPDATE pages_vues SET peche = peche + 1"); $nbr = 1; if ($periode = "jour"){ if ($tps = 'brumeux'){ $sql45 = $bdd->query("SELECT * FROM peche WHERE map='Nazaris' AND periode='jour' AND periode3='brume' ORDER BY RAND()"); }else { $sql45 = $bdd->query("SELECT * FROM peche WHERE map='Nazaris' AND periode='jour' ORDER BY RAND()"); } }elseif ($periode = "nuit"){ if ($tps ='brumeux'){ $sql45 = $bdd->query("SELECT * FROM peche WHERE map='Nazaris' AND periode2='nuit' AND periode3='brume' ORDER BY RAND()"); }else{ $sql45 = $bdd->query("SELECT * FROM peche WHERE map='Nazaris' AND periode2='nuit' ORDER BY RAND()"); } } $s = $bdd->query("SELECT COUNT(*) FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='1'")->fetchColumn(); $sq = $bdd->query("SELECT COUNT(*) FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='2'")->fetchColumn(); $sql = $bdd->query("SELECT COUNT(*) FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='3'")->fetchColumn(); $sqle = $bdd->query("SELECT COUNT(*) FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='4'")->fetchColumn(); //----------------------------------------------------------------------------------// // Taux de capture //----------------------------------------------------------------------------------// $taux_capture1 = rand(1 , 100); $taux_capture2 = rand(1 , 100); $taux_capture3 = rand(1 , 100); $taux_capture4 = rand(1 , 100); $taux1 = $taux_capture1; $taux2 = $taux_capture2; $taux3 = $taux_capture3; $taux4 = $taux_capture4; //---------------------------------------------------------------------------------// //----------------------------------------------------------------------------------// // Variables POST //----------------------------------------------------------------------------------// $OK = isset($_POST['selec_ball']) ? $_POST['cap_poke'] : ''; $choix=isset($_POST['selec_ball']) ? $_POST['selec_ball'] : NULL; // Traitement du choix $sql = $bdd->exec("DELETE FROM membres_objets WHERE membre_id='".$ID."' AND ID_objet='".$choix."' LIMIT 1"); switch($choix){ case '1': if ($taux1 <= 20){ $insert_pok = $bdd->exec("INSERT INTO transfertspokemon VALUES('', '".$ID."', '".$don['no']."', '".$niveau."', '25', '25', '0', '25', '".$sexe."', '0', '".$shiney."', '', '".$time."', 'Nazaris', '7', '0', '', '', '', '')"); $msg = "Bravo ! Tu as capturé ce pokemon ! "; }else{ $msg = "Dommage le pokemon c'est enfuie"; } break; case '2': if ($taux2 <= 50){ $insert_pok = $bdd->exec("INSERT INTO transfertspokemon VALUES('', '".$ID."', '".$don['no']."', '".$niveau."', '25', '25', '0', '25', '".$sexe."', '0', '".$shiney."', '', '".$time."', 'Nazaris', '7', '0', '', '', '', '')"); $msg = "Bravo ! Tu as capturé ce pokemon ! "; }else{ $msg = "Dommage le pokemon c'est enfuie"; } break; case '3': if ($taux3 <= 80){ $insert_pok = $bdd->exec("INSERT INTO transfertspokemon VALUES('', '".$ID."', '".$don['no']."', '".$niveau."', '25', '25', '0', '25', '".$sexe."', '0', '".$shiney."', '', '".$time."', 'Nazaris', '7', '0', '', '', '', '')"); $msg = "Bravo ! Tu as capturé ce pokemon ! "; }else{ $msg = "Dommage le pokemon c'est enfuie"; } break; case '4': if ($taux4 <=100) { $insert_pok = $bdd->exec("INSERT INTO transfertspokemon VALUES('', '".$ID."', '".$don['no']."', '".$niveau."', '25', '25', '0', '25', '".$sexe."', '0', '".$shiney."', '', '".$time."', 'Nazaris', '7', '0', '', '', '', '')"); $msg = "Bravo ! Tu as capturé ce pokemon ! "; }else{ $msg = "Dommage le pokemon c'est enfuie"; } break; default: $msg =''; } ?> <!-- ICI le code HTML DE TA PAGE --> <div id="Peche"> <a href="">Rafraichir</a> <div id="curseur" class="infobulle"></div> <table style="border:0px; padding:0px; margin:0px;"> <tr> <td> <?php echo $img_periode; ?> </td> <td> Il est <b><?php echo $heure2; ?></b>. Il fait <b><?php echo $periode; ?></b> à <b><?php echo $map; ?></b>.<br /> La température est estimée à <b><?php echo $meteo['degre']; ?></b>°C sous un ciel <b><?php echo $tps; ?></b>. </td> </tr> </table> <br><br> <?php if($map == 'Nazaris'){ /* On utilise le fichier index2.php pour rediriger le membre vers sa localisation */ if($periode == "jour"){ if($tps == "pluvieux"){ echo '<img src="images/maps/'.$map.'_pluie.gif" Usemap="#'.$map.'" style="overflow: scroll;border: 1px solid black;"/>'; }else if($tps == "brumeux"){ echo '<img src="images/maps/'.$map.'_brume.png" Usemap="#'.$map.'" style="overflow: scroll;border: 1px solid black;"/>'; }else{ echo '<img src="images/maps/'.$map.'.png" Usemap="#'.$map.'" style="overflow: scroll;border: 1px solid black;"/>'; } echo "<map name='$map'>"; }else{ if($tps == "pluvieux"){ echo '<img src="images/maps/nuit/'.$map.'_pluie.gif" Usemap="#'.$map.'" style="overflow: scroll;border: 1px solid black;"/>'; }else if($tps == "brumeux"){ echo '<img src="images/maps/nuit/'.$map.'_brume.png" Usemap="#'.$map.'" style="overflow: scroll;border: 1px solid black;"/>'; }else{ echo '<img src="images/maps/nuit/'.$map.'.png" Usemap="#'.$map.'" style="overflow: scroll;border: 1px solid black;"/>'; } echo "<map name='$map'>"; } include("coords.php"); echo "</map>"; }else{ echo '<b><font color="red">Erreur de localisation. Cette map n\'existe pas.</font></b><br /><br /> Si cette erreur <b>persiste</b> :<br /> Veuillez contacter <b>l\'Administration</b> pour vous déplacer sur une autre map.'; } // Fin du if($map == 'Nazaris') ?> <br><br> <table> <tr>Venez pêcher toutes sortes de Pokemon aquatique. Certains d'entre eux peuvent même être Shiney</tr> <tr> <?php //Récupération "propre" des variables while(($don = $sql45->fetch()) && ($nbr <= 1)){ $nbr++; $sexe = rand(1,2); if ($sexe == 1){ $sexe2 = 'Male'; }elseif ($sexe == 2) { $sexe2 = 'Femelle'; }else { $sexe = ''; } if($map == "Nazaris"){ $niveau = rand(2,5);} $randshiney = rand(1,8192); if($randshiney == 1){ $shiney = "shiney"; }else{ $shiney = ""; } } //fin du while if (isset($OK)) { // on affiche si le formulaire a été validé. echo $msg; } ?> <td> <img src="<?php echo $url; ?>images/pokemon/<?php echo $shiney; ?>/<?php echo $don['no']; ?>.png"/> <br> <?php echo utf8_decode($don['nom']); ?></b> <span style="color: <?php echo $color_shiney; ?>;"> <?php echo $shiney; ?> </span> <br> <b>Niveau <?php echo $niveau; ?> </b> <br> <b>Sexe</b> : <?php echo utf8_decode($sexe2); ?></br> <b>Type : <img src="images/type/<?php echo $don['type'];?>.png" /> <img src="images/type/<?php echo $don['type2'];?>.png" /> </b> <form action="" method="POST"><br/> <input type="hidden" value="<?php echo $niveau; ?>" name="niveau"/> <input type="hidden" value="<?php echo $shiney; ?>" name="shiney"/> <input type="hidden" value="<?php echo $don['no']; ?>" name="no"/> <select name="selec_ball"> <?php if ($s >= 1 ){ ?> <option value="1"> PokeBall (<?php echo $s ; ?>)</option> <?php } if ($sq >= 1 ){ ?> <option value="2"> SuperBall (<?php echo $sq ; ?>) </option> <?php } if ($sql >= 1 ){ ?> <option value="3"> HyperBall (<?php echo $sql ; ?>) </option> <?php } if ($sqle >= 1 ){ ?> <option value="4"> MasterBall (<?php echo $sqle ; ?>) </option> <?php } ?> </select> <br> <input type="submit" value="Capturer !" name="cap_poke" style="cursor:pointer; padding:5px 20px; background-color:gold; border:dotted 5px red; border-radius:15px;"> </form> </td> </tr> </table> </div>
Il faut séparer les TRAITEMENTS PHP ... du HTML .....
Ca le rend beaucoup plus lisible et donc... plus facile à déboguer en cas de besoin.
Je te laisse le reprendre, vérifier qu'il fonctionne toujours (sinon, j'ai pu légèrement me tromper en essayer de reprendre ton code ( vu qu'il était franchement imbitable) .....
et revenir vers nous si tu as encore des soucis.
(Par contre... s'il te plait ..... Essayes vraiment d'être le plus clair et précis dans la rédaction de tes questions.... )
Cordialement,
Jordane