[Php-mysql] Problème While qui s'arrête
Résolu
florent_mi
-
florent_mi -
florent_mi -
Bonjour,
Sur un de mes sites, j'ai un problème que j'arrive absoluement pas à comprendre. Je m'explique:
J'effectue une requête sql, puis je l'appelle en faisant un While. Le problème est que ce while s'arrête, sans raison, à endroits NON fixes. Le seul point commun que j'ai dégagé semble que la boucle s'arrête après une variable, mais jamais la même, et appelle même des données d'une autre table absoluement pas appellée dans la requête...
Voici le code:
Avez-vous une idée d'où cela pourrait venir?
Sur un de mes sites, j'ai un problème que j'arrive absoluement pas à comprendre. Je m'explique:
J'effectue une requête sql, puis je l'appelle en faisant un While. Le problème est que ce while s'arrête, sans raison, à endroits NON fixes. Le seul point commun que j'ai dégagé semble que la boucle s'arrête après une variable, mais jamais la même, et appelle même des données d'une autre table absoluement pas appellée dans la requête...
Voici le code:
<form name="form" id="form"> <select name="jumpMenu" id="jumpMenu" onchange="MM_jumpMenu('parent',this,0)"> <? if ($sous_domaine == "www"){?><option selected="selected">Sélectionnez</option><? } $sous_domaines = mysql_query("SELECT * FROM regions ORDER BY region_repertoire") OR DIE(MYSQL_ERROR()) ; // Requête SQL while ($resultats_sous_domaines = mysql_fetch_array($sous_domaines) ) { $region_nom_reroutage = $resultats_sous_domaines['region_nom']; $region_repertoire_reroutage = $resultats_sous_domaines['region_repertoire']; echo "<option value=\""; echo $url1;echo $region_repertoire_reroutage; echo $url2; echo $cat; if ($sscat != "") { echo "/"; echo $sscat; }?>.html"<? if ($sous_domaine == $region_repertoire_reroutage) { echo "selected=\"selected\""; } echo ">"; echo $region_nom_reroutage; echo "</option> "; } ?> </select> </form>
Avez-vous une idée d'où cela pourrait venir?
A voir également:
- [Php-mysql] Problème While qui s'arrête
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
- Paramètres s'arrête systématiquement ✓ - Forum Samsung
- Expert php pinterest - Télécharger - Langages
- Mysql error in file: /engine/classes/mysql.php at line 53 ✓ - Forum Réseaux sociaux
6 réponses
Bonjour,
Déja mets les tags php: <?php ?> au lieu de <? ?> sinon en php5 ça mets la panique
ensuite il te manquait la fermeture \" de value
essayes comme ça je t'ai un peu simplifié ton code en concaténant plutot que de faire des echo succéssifs.
Déja mets les tags php: <?php ?> au lieu de <? ?> sinon en php5 ça mets la panique
ensuite il te manquait la fermeture \" de value
essayes comme ça je t'ai un peu simplifié ton code en concaténant plutot que de faire des echo succéssifs.
<form name="form" id="form"> <select name="jumpMenu" id="jumpMenu" onchange="MM_jumpMenu('parent',this,0)"> <? if ($sous_domaine == "www"){ ?> <option selected="selected">Sélectionnez</option><? } $sous_domaines = mysql_query("SELECT * FROM regions ORDER BY region_repertoire") OR DIE(MYSQL_ERROR()) ; // Requête SQL while ($resultats_sous_domaines = mysql_fetch_array($sous_domaines) ){ $option="<option value=\"".$url1.$resultats_sous_domaines['region_repertoire'].$url2.$cat; if ($sscat != ""){ $option.= "/".$sscat; } $option.=".html" $option.="\""; // c'est ca qui manquait, la fermeture \" de value if ($sous_domaine == $resultats_sous_domaines['region_repertoire']) { $option.= "selected=\"selected\""; } $option.=">".$resultats_sous_domaines['region_nom']; $option.= "</option>"; echo $option; } ?> </select> </form>
Merci de ta réponse,
J'ai modifié les <? en <?php sur toutes mes pages.
Par contre, y compris avec la modification, cela n'a rien changé, si ce n'est que la boucle s'arrête en fin de <option>. Il manque toujours environ la moitié des données.
C'est vraiment bizzare car cela ne fait ça que sur ce code...
J'ai modifié les <? en <?php sur toutes mes pages.
Par contre, y compris avec la modification, cela n'a rien changé, si ce n'est que la boucle s'arrête en fin de <option>. Il manque toujours environ la moitié des données.
C'est vraiment bizzare car cela ne fait ça que sur ce code...
re,
$sous_domaines = mysql_query("SELECT * FROM regions ORDER BY region_repertoire") OR DIE(MYSQL_ERROR()) ; // Requête SQL
essayes:
J'ai déplacé la requette car si message d'erreur il ne se voit pas car il est dans la partie <select> </select>
$sous_domaines = mysql_query("SELECT * FROM regions ORDER BY region_repertoire") OR DIE(MYSQL_ERROR()) ; // Requête SQL
essayes:
<form name="form" id="form"> <select name="jumpMenu" id="jumpMenu" onchange="MM_jumpMenu('parent',this,0)"> <?php if ($sous_domaine == "www"){ $sous_domaines = mysql_query("SELECT * FROM regions ORDER BY region_repertoire") or die("Pb avec la requette ".mysql_error()) ; // Requête SQL echo "Nombre d'enr trouves: ".mysql_num_rows($sous_domaines);// ça tu l'enlevera apres ?> <option selected="selected">Sélectionnez</option> <?php } while ($resultats_sous_domaines = mysql_fetch_array($sous_domaines) ){ $option="<option value=\"".$url1.$resultats_sous_domaines['region_repertoire'].$url2.$cat; if ($sscat != ""){ $option.= "/".$sscat; } $option.=".html" $option.="\""; // c'est ca qui manquait, la fermeture \" de value if ($sous_domaine == $resultats_sous_domaines['region_repertoire']){ $option.= "selected=\"selected\""; } $option.=">".$resultats_sous_domaines['region_nom']; $option.= "</option>"; echo $option; } ?> </select> </form>
J'ai déplacé la requette car si message d'erreur il ne se voit pas car il est dans la partie <select> </select>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ce ne serait pas la fin du if(........="www"){
qui génerait ?
Essayes comme ça, je l'ai mis après la boucle while:
qui génerait ?
Essayes comme ça, je l'ai mis après la boucle while:
<form name="form" id="form"> <select name="jumpMenu" id="jumpMenu" onchange="MM_jumpMenu('parent',this,0)"> <?php if ($sous_domaine == "www"){ $sous_domaines = mysql_query("SELECT * FROM regions ORDER BY region_repertoire") or die("Pb avec la requette ".mysql_error()) ; // Requête SQL echo "Nombre d'enr trouves: ".mysql_num_rows($sous_domaines);// ça tu l'enlevera apres ?> <option selected="selected">Sélectionnez</option> <?php while ($resultats_sous_domaines = mysql_fetch_array($sous_domaines) ){ $option="<option value=\"".$url1.$resultats_sous_domaines['region_repertoire'].$url2.$cat; if ($sscat != ""){ $option.= "/".$sscat; } $option.=".html" $option.="\""; // c'est ca qui manquait, la fermeture \" de value if ($sous_domaine == $resultats_sous_domaines['region_repertoire']){ $option.= "selected=\"selected\""; } $option.=">".$resultats_sous_domaines['region_nom']; $option.= "</option>"; echo $option; } }// là ?> </select> </form>