• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Не выполняется весь цикл

  • Автор темы alexeevich
  • Дата начала
A

alexeevich

Здравствуйте, есть рекурсивная функция
PHP:
function GetMenuTree($id_menu, $space, $section_id)
{
$query2 = mssql_query("SELECT * FROM table WHERE root_id = ".$id_menu);
if (mssql_num_rows($query2) > 0)
{ 
while ($result2 = mssql_fetch_array($query2))
{
return 'данные из базы'
."\n".GetMenuTree($result2['f_id'], $space.'', $section_id);
}
} 
}
но цикл while выполняется только 1 раз, хотя из базы подтягивается 2 строки :ya_lamo:
В чем может быть проблема?
 
F

firs777

$query2 = mssql_query("SELECT * FROM table WHERE root_id = ".$id_menu);
if (mssql_num_rows($query2) > 0)
{
while ($result2 = mssql_fetch_array($query2))

ну так ты пиши правильно!=)
Код:
$query2 = mysql_query("SELECT * FROM table WHERE root_id = ".$id_menu);
if (mysql_num_rows($query2) > 0)
{ 
while ($result2 = mysql_fetch_array($query2))
 
K

kabanches

так у тебя там return написано, он возвращает сразу результат, поэтому 1 раз
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!