
10.11.2009, 23:45
|
|
Reservists Of Antichat - Level 6
Регистрация: 08.04.2008
Сообщений: 286
Провел на форуме: 2375131
Репутация:
1695
|
|
Сообщение от L I G A
самый примитивный вариант (до вывода):
PHP код:
if($_GET['adr']){
echo header('Location: ' . $_GET['adr']) ;
exit();
}
если N - это время,то sleep(сек); перед редиректом.
В твоем коде как бы раскрытие пути, при передачи новой строки в параметре _GET['adr'], имеем раскрытие пути. И зачем там echo !?
пример:
http://site.ru/script.php?adr=xe%0Ak%0A
получим:
Warning: Header may not contain more than a single header, new line detected. in /path/script.php
И вообще хорошо бы использовать функцию empty()
PHP код:
if (!empty($_GET['adr']))
Более правильный вариант:
PHP код:
<?php
if (!empty($_GET['adr']) && !@preg_match('/[\r\n]/', $_GET['adr'])) {
echo '<h1>перенаправление</h1>';
sleep(5);
header('Location: http://'.$_GET['adr']);
}
exit;
?>
__________________
Cервер cs 1.6
cs.antichat.net:27015
Последний раз редактировалось (Dm); 11.11.2009 в 00:57..
|
|
|