Сообщений: 1 Зарегистрирован: 03 Января 2011, 14:48:10 Сказали спасибо 0 раз Статус: offline
Опубликовано 03 Января 2011, 15:51:07
Здравствуйте, подскажите как реализовать следующее:
есть форма для записи инфы в базу.
есть обработчик формы.handler.php
необходимо проверить идентификатор сессии в форме и в обработчике, примерно так:
в форме ставим скрытое поле, в нем пишем session_id
<?рпр
// Инициируем сессию
session_start();
?>
<form action=handler.php method=post>
Имя: <input type=text name=name>
Пароль: <iput type=password name=pass>
<input type=submit name=send value=Отправить>
<input type=hidden name=session_id value=<?php echo session_id();?»
</form>
в обработчике- проверяем этот id:
<?php
// Инициируем сессию
session_start();
// Сравниваем переданный идентификатор из формы
//с текущим идентификатором сессии
if($_POST['session_id'] != session_id())
{
exit("Попытка передачи данных с другого хоста. Скрипт остановлен."
}
// Дальнейшая обработка данных...
?>
Вопрос в следующем: где нужно прописать session_start(); для формы???(ведь если я поставлю его просто в начале формы, она не заработает - т.к. сначала выводится основной шаблон сайта, а потом уж отдельные куски внутри)