Forum Webscript.Ru
Программирование => PHP => Тема начата: Terion от 07 Сентября 2006, 11:18:28
-
Такая проблема,
Необходимо обработать данные пришедшие с формы, на стороне сервера, и отправить POST методом результат в переменных с помощью php кода .
Суть следующая, клиент заполняет форму, потом переходит по ссылке на send.php с данными POST, сервер их проверяет и если все ок, то перенаправляет клиента на новый ok.php с теми же данными + новые данные.
страница формы ----
--------------
в send.php происходит обработка на стороне сервера и клиента кидает на другую страницу ok.php с данными в зависимости от результата, которые сформируются на send.php, т.е. страница ok.php должна получить данные в формате
$rrr=$HTTP_POST_VARS[\'данные\']; от страницы send.php.
Проблема в том, что я не знаю как без участия оператор, на стороне сервера, запихнуть данные в переменные POST и с ними автоматически перейти на другую страницу?
Как это можно сделать?
-
Terion
Заставить браузер пользователя обратиться к другому ресурсу с заданным POST-запросом? Никак.
-
Значит, как я понял, единственный выход это обратиться к другому ресурсу с заданным GET-запросом?
-
Terion
По условиям описанным тобой в задаче - не обратиться, а перенаправить пользователя. header("Location: somewhere?somedata");
(От сервера обращаться можешь куда угодно через создание сокета.)
Тем не менее, решение для твоей задачи есть, и имя ему - сессии.
http://phpfaq.ru/sessions
В скрипте ok.php работать будешь не с $_POST, а с $_SESSION.
-
CGVictor
Спасибо за исчерпывающий ответ, разобрался.
-
Еще один вопрос.
Как я понял сессии определяются не только именем session_name() но и ID session_id().
Возможно ли открытие нескольких независимых сессий с одним и тем же именем? Если да, то будет ли возможность проследит за каждой сессией по ID session_id() ?
Это нужно для случая с общим пользователем guest.
-
Одновремено -- нет. поочереди -- да.
вот посмотри Altaxar код, думаю найдеш ответ на свой вопрос
link (http://forums.webscript.ru/showthread.php?s=&threadid=24334&msgnum=15)
-
Terion
SessionID ты менять не должен вообще. Забудь о нем. Этот идентификатор и должен быть уникальным.
Если тебе нужно связывать идентификатор пользователя с сессией - просто храни его (сюрприз!) в данных сессии. И вопрос исчерпан.
Akvar
При чем здесь это?