Не рабоает header("Location:

verhmax
На сайте с 01.12.2005
Offline
191
1624

на одном хостинге использовал php функцию:

header("Location: http://www.site.ru");

на другом она не работает:-( что можно сделать? как можно заменить?

Заранее спасибо!

Zlo_606ep
На сайте с 14.12.2006
Offline
129
#1

а выдает хоть какую-нибудь ошибку? и что это за хостинг такой

verhmax
На сайте с 01.12.2005
Offline
191
#2

выдаёт ошибку:

Warning: Cannot modify header information - headers already sent by

хостинг - robo-host

Larden
На сайте с 09.03.2007
Offline
32
#3

Попробуйте прописать в начале скрипта: ob_start();

verhmax
На сайте с 01.12.2005
Offline
191
#4

Larden, спасибо! помогло!!! правда я так и не понял что эта функция делает:(

Larden
На сайте с 09.03.2007
Offline
32
#5
verhmax:
Larden, спасибо! помогло!!! правда я так и не понял что эта функция делает:(

Из мануала php:


void ob_start ([string output_callback])

Эта функция включает буферизацию вывода. Если буферизация вывода активна, никакой вывод скрипта не высылается (кроме шапок/headers); вывод сохраняется во внутреннем буфере.
Mihajlo
На сайте с 30.10.2006
Offline
156
#6

на 99.99% это глюк ваш, а не хостинга

PHPExpert
На сайте с 04.02.2006
Offline
104
#7
verhmax:
выдаёт ошибку:
Warning: Cannot modify header information - headers already sent by
хостинг - robo-host

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

Dreammaker
На сайте с 20.04.2006
Offline
569
#8

На практике код должен быть примерно такой:


if (условие) {
// Ваш код;
}

else {
header("Location:www.site.ru ")
}
Каширин
На сайте с 03.01.2004
Offline
1018
#9

Просто ТС выводит что-то на печать, а после этого пытается хидер отдать :) Ищите echo :)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий