Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Undefined index: HTTP_REFERER
 
 автор: tAleks   (26.06.2006 в 14:35)   письмо автору
 
 

В форме стоит скрытое поле, в которе зноситься (должно заноситься) $_SERVER['HTTP_REFERER'], т.е. адрес страницы, с которой послали юзера заполнять свои данные (покупателя).

Потом это значение (адрес) передается POST'ом обработчику, который проверяемт правильность данных и если все ОК пеернаправляет юзера на страницу, с которой его послали заполнять форму, т.е. $_SERVER['HTTP_REFERER'].

Но тут вылетает такая ошибка: Undefined index: HTTP_REFERER .

Почему?

   
 
 автор: Trianon   (26.06.2006 в 14:38)   письмо автору
 
   для: tAleks   (26.06.2006 в 14:35)
 

HTTP_REFERER отправляется браузером клиента.
Причем браузер может его формировать, а может этого и не делать.

   
 
 автор: tAleks   (26.06.2006 в 14:42)   письмо автору
 
   для: Trianon   (26.06.2006 в 14:38)
 

Это как это? Можно по подробней на этом месте?

И как это решить, т.е. сделать чтобы все работало?

   
 
 автор: Trianon   (26.06.2006 в 14:47)   письмо автору
 
   для: tAleks   (26.06.2006 в 14:42)
 

Можно самому передавать этот адрес.
Например, в скрытом поле.

   
 
 автор: Unkind™   (26.06.2006 в 14:48)   письмо автору
 
   для: tAleks   (26.06.2006 в 14:42)
 

1. А зачем делать скрытое поле для формы с рефферером? Ведь рефферер - адрес предыдущей страницы, на которую заходил пользователь...А если он сразу запросил файл с формой, то рефф будет пустой или вообще не задан, как у вас получилось...
2. Поставьте в начале error_reporting(0); и тогда сообщений об ошибках не будет.
3. Проверяйте рефферер в самом обработчике, а в форме делать ничего с ним не нужно.

   
 
 автор: RV   (26.06.2006 в 15:41)   письмо автору
 
   для: Unkind™   (26.06.2006 в 14:48)
 

4. и не надейтесь на рефферер. броузер может его послать, а может и не послать. фаервол или сторонний софт может зарезать рефферер, может заменить на свое значение, типа Blocked by super[puper]soft. Пользователь может сформировать свой рефферер и отправить его. В общем только в качестве опции

   
 
 автор: margol   (26.06.2006 в 18:28)   письмо автору
 
   для: tAleks   (26.06.2006 в 14:35)
 

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

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования