Boucle imbriquée et je reçois une page blanche (php)
-
05-07-2019 - |
Question
Voici ce que j'ai obtenu -
$awards_sql_1 = mysql_query('SELECT * FROM categories WHERE section_id = 1') or die(mysql_error());
$awards_rows_1 = mysql_num_rows($awards_sql_1);
$awards_sql_2 = mysql_query('SELECT * FROM categories WHERE section_id = 2') or die(mysql_error());
$awards_sql_3 = mysql_query('SELECT * FROM categories WHERE section_id = 3') or die(mysql_error());
$awards_sql_4 = mysql_query('SELECT * FROM categories WHERE section_id = 4') or die(mysql_error());
$i = 0;
$records = mysql_num_rows($sections_query);
while($row_sections = mysql_fetch_array($sections_query)) {
echo "<h3>" . $row_sections['section_name'] . "</h3>";
echo "<ul>";
//while($categories = mysql_fetch_array($awards_sql_1)) {
for ($i = 0; $i < $awards_rows_1; $i++) {
echo "<li><strong>$categories['category_name']</strong>";
}
echo "</ul>";
}
Pour une raison quelconque, si je commente le for () imbriqué dans le while (), la page se chargera bien et je verrai tous mes h3, cependant, chaque fois que j'essaie d'imbriquer un for () ou alors () dans l'original while (), la page devient blanche lors du rechargement.
Qu'est-ce que je fais de travers?
La solution
Vous devez placer des accolades autour des variables de tableau incorporées dans des chaînes, sinon vous obtiendrez une erreur d'analyse.
echo "<li><strong>{$categories['category_name']}</strong>";
http://php.net /manual/en/language.types.string.php#language.types.string.parsing
Autres conseils
Essayez avec, vous obtiendrez le message d'erreur:
<?php
error_reporting(E_ALL);
...
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow