Бесконечный цикл, есть ли он?

Олег Нечай

Новичок
Здравствуйте!

Есть подозрения, что в коде на этой странице

scrollnews.ru/index.php?content=block_news_belaya.php&id=184

, где размещено видео с ютуб, существует бесконечный цикл.

Однако я его сам не нашел (заходил с нескольких компов и с нескольких браузеров и ничего не висло и все работает нормально).

Мог бы кто-нибудь проверить, если там бесконечный цикл и как его вылечить, если он есть?

Вот код вставки видео:

if ($block[video]=="")
{echo "";}
else
{echo "<div class='div_block_block_video'><div class='div_block_video' id='div_block_video'><div class='div_text_block_video' id='div_text_block_video' onclick='video_block_down();'>".'Развернуть видео'."</div>";
echo $block[video]."</div></div>";}

в раздел [video] из базы данных вставляется ссылка такого формата:

<iframe class="block_video" src="http://www.youtube.com/embed/sZrg9r2IrO4" frameborder="0" allowfullscreen></iframe>

???

Спасибо.
 

Andkorol

Новичок
На чем основаны подозрения о наличии бесконечного цикла?
 

Олег Нечай

Новичок
Дело в том, что на странице есть косяки с видео, которое раскрывается через обыкновенный javascript.

Я два-три дня назад создавал тему с вопросом, как эти косяки вылечить.

Но поступило сообщение от одного пользователя (чей ник я не буду говорить), что там бесконечный цикл, и админ закрыл мою тему.

Далее я написал письмо админу, мол, могут ли они указать причины закрытия темы. Админ мне написал, что там на сайте, действительно, бесконечный цикл - и я должен "вылечить сайт".

Я как мог сам пытался найти опасную болезнь, но не нашел. Поэтому создаю специально под нее новую тему.
Извините.
 

Фанат

oncle terrible
Команда форума
На косяке, который Фиксер нашёл в коде сайта из предыдущего вопроса автора.
причем бесконечный инклюд вызван кривой архитектурой сайта(ламерский include($_GET['param']) - что будет, если указать сам index.ph?), разумеется, а не этим конкретным кодом.
 

Andkorol

Новичок
поступило сообщение от одного пользователя (чей ник я не буду говорить), что там бесконечный цикл, и админ закрыл мою тему.
Пользователь (чей ник я не буду говорить) в этом же посте привел ссылку, пройдя по которой можно убедиться в возможности запуска этого бесконечного цикла.
Невооруженным глазом заметно, что параметры в той ссылке радикально отличаются от ссылки, которую вы привели в этои топике.
Вам таким образом намекнули на уязвимость вашего алгоритма обработки URL - устранением которой вам и следует заняться в первую очередь.
К "косякам с видео" это не имеет прямого отношения.
 

Олег Нечай

Новичок
Как??

Опубликовать весь код из index.php ?? Там много-премного букав...

Опубликую пока код всего блока, который выводится из php :

<?php
mysql_connect("localhost","root","");
mysql_select_db("oleg1ator1");
$result_content=mysql_query("SELECT * FROM `oleg1ator1`.`scrollnews_a` WHERE `id`='$_GET[id]'");
$block=mysql_fetch_array($result_content);
echo "<div class='div_header'>".$block[header]."</div>";
echo "<div id='block1' class='div_block'>".$block[block1];
echo "<span class='span_name'>".$block[name1]."</span></div>";
echo "<div class='div_block'>".$block[block2];
echo "<span class='span_name'>".$block[name2]."</span></div>";
echo "<div class='div_block'>".$block[block3];
echo "<span class='span_name'>".$block[name3]."</span></div>";
echo "<div class='div_block'>".$block[block4];
echo "<span class='span_name'>".$block[name4]."</span></div>";
echo "<div class='time_date'>".$block[date];
echo "&nbsp;&nbsp;".$block[time]."</div>";
if ($block[video]=="")
{echo "";}
else
{echo "<div class='div_block_block_video'><div class='div_block_video' id='div_block_video'><div class='div_text_block_video' id='div_text_block_video' onclick='video_block_down();'>".'Развернуть видео'."</div>";
echo $block[video]."</div></div>";}
?>

Вот данный блок. Остальные блоки к данному блоку отношений вроде не имеют - то есть никак с этим блоком не взаимодействует.
Это и нужно было опубликовать?

а в index.php подключалась данная страница в два этапа - вот так:
Первый (главная страница выводила ссылки):
<div id="content_a">
<?php
if(@$_GET["content"]=="")
{@include("includes/content_polityc.php");}
else
{@include("includes/".$_GET["content"]);}
?>
</div>

Получается вот эта страница:
http://scrollnews.ru/index.php?content=content_polityc.php

А через эту страницу с помощью этого кода (опубликован ниже) открывается и та, где предположительно и есть бесконечный цикл:

<?php
mysql_connect("localhost","root","");
mysql_select_db("oleg1ator1");
$massive=mysql_query("SELECT * FROM `oleg1ator1`.`scrollnews_a` ORDER BY `id` DESC LIMIT 16");
while($comments=mysql_fetch_array($massive))
{
echo "<table class='table'><tr><td width='40' style='text-align:center'>";
echo "</td>";
echo "<td style='padding-left:14px;padding-bottom:10px'><span id='news'><a href='index.php?content=block_news_belaya.php&id=$comments[id]'>".$comments[news]."</a></span></td></tr></table>";
echo "<div class='block1'>".$comments[block1]."</div>";
}
?>

Вроде так.
Это?
 

Олег Нечай

Новичок
Andkorol писал: "Пользователь (чей ник я не буду говорить) в этом же посте привел ссылку, пройдя по которой можно убедиться в возможности запуска этого бесконечного цикла"

Ответ:
Ссылку не увидел. Или не понял, что там была ссылка.

Ту ссылку - в том "топике" - я опубликовал, используя кнопку "http://" в панели иструментов (выше - над полем ввода текста). А ссылки в этом теме я вставлял, просто копируя из браузера.
Возможно ли, что проблема не в коде, а в моем неумении вставлять ссылки на форуме?
 

fixxxer

К.О.
Партнер клуба
include("includes/".$_GET["content"]);
Ну вот тут в content можно передать имя любого файла. ../index.php например. или ../../../../../etc/passwd или что угодно.

Простейшее исправление: include("includes/".basename($_GET["content"]));
 

Олег Нечай

Новичок
" ламерский include($_GET['param']) "

А! Но я, к сожалению, пока не научился читать между строк!

А вставлять таким образом меня научили на курсах, которые я только недавно закончил, поэтому я ладе и не подозревал...

исправлю на указанные г. fixxxer
include("includes/".basename($_GET["content"]))

и снова вышлю ссылку для проверки. Спасибо!
 

Олег Нечай

Новичок
А вот, увидел ссылку
scrollnews. ру /index.php?content=../index.php

Вот она бесконечность-то! А я решил, что так принято сокращать ссылки и что эта надпись сама по себе не является ссылкой.

Ладно. Вижу мне предстоит дорога через тернии с пометкой "лаймер" :)

Спасибо большое ребята!
 

Олег Нечай

Новичок
г. Фанат, спасибо за ссылку - в выходные ознакомлюсь обязательно.

http://scrollnews.ru/index.php?content=content_war.php

Как сам могу судить, бесконечный цикл завершен.

scrollnews. ru/index.php?content=../index.php

Господину (которого теперь грех не назвать) fixxxer - спасибо.
Спасибо всем!
Теперь можно и к видео-косякам переходить ;)
 
Сверху