Я нашел этот маленький кусочек php-кодов, который соответствует моим требованиям.Позиционирование else condition в php
<?php
$allDocs = mysql_query("SELECT id, parent FROM modx_site_content ORDER BY id DESC");
while($doc = mysql_fetch_assoc($allDocs)) {
$parent = mysql_query("SELECT id FROM modx_site_content WHERE parent = " . $doc['id'] . " AND id = " . $doc['parent']);
if(mysql_num_rows($parent)) {
while($parentDoc = mysql_fetch_assoc($parent)) {
echo 'Infinte loop found<br /><br />';
echo 'Document #' . $doc['id'] . ' and document #' . $parentDoc['id'] . ' are each others parent.';
}
}
}
?>
Я пытался ставить условие еще так:
<?php
$allDocs = mysql_query("SELECT id, parent FROM modx_site_content ORDER BY id DESC");
while($doc = mysql_fetch_assoc($allDocs)) {
$parent = mysql_query("SELECT id FROM modx_site_content WHERE parent = " . $doc['id'] . " AND id = " . $doc['parent']);
if(mysql_num_rows($parent)) {
while($parentDoc = mysql_fetch_assoc($parent)) {
echo 'Infinte loop found<br /><br />';
echo 'Document #' . $doc['id'] . ' and document #' . $parentDoc['id'] . ' are each others parent.';
}
}
else {
echo 'No loop found';
}
}
?>
Но он идет в то время цикла. Где подходящее место, чтобы поставить условие else?
Как условие ELSE должно прекратить поток программы для ввода второго цикла? Условным является то, получили ли вы результаты второго запроса. – Deleteman
Означает ли это, что мне нужно в конце концов где-то посередине раньше? – Santosh
Что именно вы хотите сделать? Печать «Нет петли найдена», если результатов нет? Если это так, ваш код правильный, вам просто нужно убедиться, что этот запрос: «$ parent = mysql_query (« SELECT id FROM modx_site_content WHERE parent = ». $ Doc ['id']." AND id = ". $ док [ 'родитель']);» не дает результатов, чтобы попробовать. – Deleteman