передача параметров от одного сценария к другому

  • Автор темы Автор темы сtас
  • Дата начала Дата начала
Статус
В этой теме нельзя размещать новые ответы.

сtас

Guest
передача параметров от одного сценария к другому

такая проблема: необходимо передать параметры (имя, пароль) сохранённые в сессии одного сценария другому. Дело в том, что в сценарии источнике имя, пароль запоминаются в $_SESSION[$username] и в $_SESSION[$password]. Как их использовать в сценарии приёмнике, в котором сессий вообще нет. Вопрос нубски, конечно, но всё-таки если знает кто, подскажите plz.
 
в котором сессий вообще нет - никак. А кто тебе мешает в нём сессию стартовать? Чтобы сессии появились?

$_SESSION[$username] - ты уверен, что писать надо именно так?
Ты не пробовал заглядывать в раздел "вопросы-ответы" этого сайта? Может бть, ответ на твой вопрос есть там?
 
Спасибо!
А разве нельзя в приёмнике использовать массив $_SESSION?
Типа так: username_priemnik=$_SESSION["username_istochnik"]
Ведь если стартовать сессию в приёмнике, тогда SID для приёмника и источника будут разные.

P.S. Я понимаю, что отвечать на такие вопрос в лом, но у меня
курсач висит и срочно совет нужен.
 
сtас

Ведь если стартовать сессию в приёмнике, тогда SID для приёмника и источника будут разные.
это заблуждение

Типа так: username_priemnik=$_SESSION["username_istochnik"]
может и можно, только явно не нужно


курсач висит и срочно совет нужен.
так может надо курсач выбирать по теме, где хоть что то шариш?
 
сtас
нет, ты неправильно понимаешь.
причина того, что ты не понял ответа не в том, что отвечать в лом, а в том, что это ТЫ НЕВНЯТНО ЗАДАЛ СВОЙ ВОПРОС.
понимаешь?
Не потому, что тут все злые и плохие.
А потому, что ты сам виноват.
Впредь постарайся сразу же, если тебя что-то не устраивает, сначала посмотреть на себя самого.

А разве нельзя в приёмнике использовать массив $_SESSION?
Можно. Но деньги вперёд. (это цитата из одной книжки, а не вымогательство, как ты уже было собрался подумать.)

Ведь если стартовать сессию в приёмнике, тогда SID для приёмника и источника будут разные.
Это ты сам догадался, или тебе подсказал кто?

Вообще, правда, я не понимаю. Ты собрался пользорвться сессиями, но совершенно не представляешь себе - что это такое. Зачем?
Почему люди не ездят на машение не зная куда?
А курсачи пишут - в лёгкую.
Ну ладно, сел писать. Опять же - почему ты не хочешь почитать про сессии, чтобы сэкономить СВОЁ ЖЕ время?
 
так может надо курсач выбирать по теме, где хоть что то шариш?
Это точно! Но отступать поздно...
А если через куки? для разных сценариев куки разные? Я имею ввиду что при сохранении источником переменной в куке можно ли получить её в приёмнике сценарии, если да то скажите, пожалуйста как.
 
А чем тебя сессии не устроили?
Тем, что ты не понимаешь, что это такое? И тем, что не хочешь узнать?
Ну используй куки. А зачем ты у нас разрешения спрашиваешь? Это же тебе они нужны, а не нам.

скажите, пожалуйста как.
а курсач целиком за тебя не написать?

-~{}~ 15.05.05 12:24:

Вообще, твои проблемы лежат далеко от программирования.
Тебе бы сесть, просто подумать над тем, то ты пишешь - и сразу ответы найдутся.
Ну вот хоть сам посмотри, что ты пишешь:
Дело в том, что в сценарии источнике имя, пароль запоминаются в $_SESSION[$username] и в $_SESSION[$password]. Как их использовать в сценарии приёмнике, в котором сессий вообще нет.
"В квартире-источнике бутылки с пивом кладутся в сумку. Как их выпить в квартире-приёмнике, если СУМКИ ТАМ НЕТ?"
Тебе не кажется такой вопрос идиотским? А ведь он копирует один в один логику твоего.
то есть, чтобы выпить пиво, сумку-то, наверное, надо принести?
А чтобы воспользоваться переменными сессии - её, наверное, надо стартовать?
 
Ладно, всё это верно, в PHP я слабовато разбираюсь. Но это не приближает меня к сдаче курсового проекта. Так что не обесудте. Мне просто помощь нужна. Если здесь могут мне помочь, то помогите пожалуйста, если нет то пусть модеры тему закроют.
Вобщем, такой вопрос: при первом запуске сценария ему PHPSID передаётся, а при последующих нет. куки отключены. Почему так?

-~{}~ 15.05.05 12:44:

Автор оригинала: Фанат

А чтобы воспользоваться переменными сессии - её, наверное, надо стартовать?
Да но ведь массив $_SESSION глобальный, почему обязательно нужно сессию стартовать в приёмнике. Как сессии работают я представляю: сессия стартует, создаётся что-то типа файла в /tmp/ с уникальным именем, в котором храняться данные, зарегистрированные в сессии. Я не понимаю как мне для разных сценариев сделать данные общими. передача в строке запроса не подходит.
 
Огромное спасибо за помощь!

-~{}~ 15.05.05 18:29:

Вот ещё вопрос:
есть сценарий
PHP:
if($_SESSION["username"]){echo $_SESSION["username"];}
else echo "ERROR!";
Этому сценарию передаётся sid из другого, в котором сессия запущена. Почему же выводится ошибка, ведь переменная username в сценарии источнике сохраняется таким образом:
$value="123";
$_SESSION["username"]=$value;
Я ведь просто (по идеи) обращаюсь к элементу массива.
 
Нет. Но ведь массив $_SESSION, то глобальный! в факе так и сказано.
 
Массив содержит переменные СЕССИИ а как он будет их содержать если она у тебя не стартует ?
 
Ну я захожу на сайт, там моему браузеру стартует сессия в сценарии А. Всё на сервере мой браузер однозначно идентифицируется. В этом сценарии есть ссылка на сценарий В. Эта ссылка преобразуется в b.php?PHPSESSID=..... Переходим по этой ссылке и попадаем в сценарий В, в котором и происходит проверка переменной:
PHP:
if($_SESSION["username"]){echo $_SESSION["username"];} 
else echo "ERROR!";
В сценарии В старта сесии нет, но ведь массив $_SESSION глобальный. почему ошибка я не пойму. браузер то один и тот же, почему массивы &_SESSION разные???
Как заставить 2 сценария использовать одну и ту же сессию, то есть файл на серваке, где храняться имена переменных и их значения.

-~{}~ 15.05.05 19:06:

Автор оригинала: DimbIch
Массив содержит переменные СЕССИИ а как он будет их содержать если она у тебя не стартует ?
Стартует в сценарии А.
 
браузер то один и тот же
А кто сказал об этом серверу?
Как заставить 2 сценария использовать одну и ту же сессию, то есть файл на серваке, где храняться имена переменных и их значения.
Вариант 1 (нормальный): использовать встроенный механизм сессий + передать SID одним из двух возможных способов.
Вариант 2 (извращенный): отказаться от встроенного механизма сессий, заменив его самописным, с самодельным "идентификатором сессии". Например, использовать в качестве оного комбинацию IP, user_agent-а и еще чего-то из переменных окружения. О надежности такого "метода" лучше умолчу.
- Массив содержит переменные СЕССИИ а как он будет их содержать если она у тебя не стартует ?
- Стартует в сценарии А
HTTP - протокол без сохранения состояния. Сценарий Б "понятия не имеет" о своей предыстории - он "знает" только то, что в него явно передали.
 
Автор оригинала: SelenIT
HTTP - протокол без сохранения состояния. Сценарий Б "понятия не имеет" о своей предыстории - он "знает" только то, что в него явно передали.
ааа... понятно!
Ну и есть у меня PHPSESID в строке адреса. этот sid связан с файлом на серваке в котором хранится нужная мне переменная, как мне до неё добраться из сценария в который передали PHPSESSID.
 
Тема закрыта. Читаем FAQ.

Прежде чем задавать вопрос - прочтите FAQ:
http://faq.phpclub.net
http://detail.phpclub.net/tree.phtml

-~{}~ 15.05.05 20:17:

Это уже наглость.
Не прочесть из фака не строчки, и опять бежать на форум с совершенно дикими идеями.
Давай-к, дружок, поработай самостоятельно.
В факе есть ответы на все твои вопросы.
Потрудись прочесть.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху