Консультация № 97956
10.08.2007, 15:52
0.00 руб.
0 6 6
Привет . Подскажите, как на php сделать редирект или это только задача javascript. Спасибо.

Обсуждение

Неизвестный
10.08.2007, 15:58
общий
это ответ
Здравствуйте, Александр Михайлович!

header("location: index.php");

перед вызовом ф-ции header браузеру не должны отдаваться данные. поэтому если нужен редирект с задержкой и сообщением типа "что-то-там сделано",то это уже джаваскриптом или метатэгами
Неизвестный
10.08.2007, 15:59
общий
это ответ
Здравствуйте, Александр Михайлович!
зависит от ваших нужд. бывают редиректы внтренние(на веб-сервере), бывают внешние(на клиенте).
если нужно сделать именно на php, то я часто использую такую функцию:

Приложение:
function redirect($url) { echo "<html><head>\n<meta http-equiv=‘Refresh‘ content=‘0; url=" . $url . "‘>\n</head></html>";}
Неизвестный
10.08.2007, 16:19
общий
это ответ
Здравствуйте, Александр Михайлович!
Если у тебя не выведено еще ни одного символа, то редирект можно сделать функцией header
header("Location: all_good.php");
И соответственно можно сразу закрывать сценарий, так как того что там будет выведено, пользователь все равно не увидит, так как задержки нету :)
Неизвестный
10.08.2007, 17:38
общий
это ответ
Здравствуйте, Александр Михайлович!

Советую всё-таки использовать javascript
<?php
echo ‘>window.location.href="ссылка на страницу";</script>‘;
?>

Хотя можно и с помощью PHP:

<?php
header("Location: ссылка на страницу");
exit();
?>

Подробнее можете почитать вот тут:
http://www.sb-news.net/?n=142
Неизвестный
10.08.2007, 21:52
общий
это ответ
Здравствуйте, Александр Михайлович!
Нет. С помошью php редирект можно сделать тоже, используя ф-ю header().
Пример:
header("Location: some_page.php");
Только единственное НО, эта ф-я должна быть прописана в самом начале скрипта, до вывода какого-то либо html кода.
Неизвестный
12.08.2007, 11:33
общий
это ответ
Здравствуйте, Александр Михайлович!
Смотрите приложение.

Приложение:
<?HEADER("Location: ".$redirect);?>
Форма ответа