Вложение цикла, и я получаю пустую страницу (php)
-
05-07-2019 - |
Вопрос
Вот что я получил -
$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>";
}
По какой-то причине, если я закомментирую for (), вложенный в while (), страница загрузится нормально, и я увижу все мои h3, однако всякий раз, когда я пытаюсь вложить for () или while () внутри оригинального while (), страница просто перезагружается при перезагрузке.
Что я делаю не так?
Решение
Вам необходимо поместить фигурные скобки вокруг переменных массива, встроенных в строки, в противном случае вы получите ошибку разбора.
echo "<li><strong>{$categories['category_name']}</strong>";
http://php.net /manual/en/language.types.string.php#language.types.string.parsing р>
Другие советы
Попробуйте, вы получите ошибку:
<?php
error_reporting(E_ALL);
...
Не связан с StackOverflow