проблема с использованием сессий

Cryptonit

Guest
проблема с использованием сессий

регистрирую сессию, следую по ссылке (c SID'ом разумеется) на другую страницу. а там переменные зарегестрированные в предыдущей странице видны только если указать session_name(<имя предыдущей сессии>).

так вот можно ли ещё как-то задействовать прежнюю сессию, ведь не из GET/POST'a же значение её имени извлекать?
 

Cryptonit

Guest
1я страница:
session_name($_GET['name']);
session_start ();
$_SESSION['name']=$name;

<a href="proba1.php">proba1</a>

2я страница:
session_start ();
...
echo $_SESSION['name']

здесь ошибка:

Undefined index: name
---------------------
2й вариант без session_name()

session_start ();
$_SESSION['name']=$name;

<a href="proba1.php?<?=SID?>">proba1</a>
тогда к вот этой ссылке SID даже в явном виде не приписывается!


2я страница:
session_start ();
echo $_SESSION['name']

может в инишнике ещё что-то прописать нужно помимо
session.use_trans_sid = 1
 

StUV

Rotaredom
> 1.php
PHP:
<?php 
session_start (); 
$_SESSION['name']='safgsdfgsl;dfkgjsdflkjgsldkf;jgsdfg';
?>
<a href="2.php">proba1</a>
> 2.php
PHP:
<?php 
session_start (); 
echo $_SESSION['name'];
?>
у меня работает

ЗЫ: и с куками, и с use_trans_sid
 

Alkinoy

Guest
Так он же ставит свое session_name($_GET['name']);
Вопрос - ЗАЧЕМ?
Если уж очень хочется - то кто во втором скрипте будет ставить такое?
 

StUV

Rotaredom
OK
добавь перед session_start в каждый скрипт session_name('some')
- все работает =)
 

StUV

Rotaredom
ессно у него ничего не работало =)))
МАН:
The session name references the session id in cookies and URLs. It should contain only alphanumeric characters; it should be short and descriptive (i.e. for users with enabled cookie warnings). The session name is reset to the default value stored in session.name at request startup time. Thus, you need to call session_name() for every request (and before session_start() or session_register() are called).
 

StUV

Rotaredom
черт, сорри - невнимательно прочитал первый пост
можно эту _бредовую_задачу реализовать так:

> 1.php:
PHP:
<?php
session_start();
$_SESSION['name']='some';
session_name('some');
session_start(); 
$_SESSION['var'] = 'some value';
?>
<a href="2.php">proba1</a>
> 2.php:
PHP:
<?php 
session_start();
$name = $_SESSION['name'];
session_name($name);
session_start();
echo $_SESSION['var'];
?>
так устроит ? :D
 

Alkinoy

Guest
Изврат ваащето получается )))) Используем сессию что бы поднять другую сессию )))
 

StUV

Rotaredom
изврат - не то слово =)
можно конечно придумать: в основном скрипте в переменной с именем юзера генерить случайное имя сессии, потом писать в нее инфу, потом в других скриптах к этой сессии обращаться...
соотв-но каждые Х минут переименовывать сессию - типа защита :)
 

Alkinoy

Guest
Самый главный вопрос (на него, кстати, автор топика так и не ответил) - ЗАЧЕМ все это???? Чем не устраивает существующее положение вещей?
 

Cryptonit

Guest
Alkinoy, просто у котерова было упомянуто, что иначе одинаковые переменные перемешаются...
 

Фанат

oncle terrible
Команда форума
Cryptonit, предположу, что ты просто не так понял Котерова. Не надо таких извращений.
 
Сверху