|
|
|
| Подскажите пожалуйста, как можно запустить сразу две сессии с различным SID. Или подскажите где можно хранить одно единственное значение (изменяющееся) так чтобы его видели все скрипты. (база данных, сессия, файл). Где лучше. | |
|
|
|
|
|
|
|
для: Евгений Петров
(18.06.2005 в 02:14)
| | Для этого необходимо воспользоваться функцией session_name(), которая позволяет задать имя сессии. Вызов этой функции осуществляется до вызова функции session_start().
<?php
// Переключаемся на сессию name1
session_name("name1");
// Инициируем сессию
session_start();
?>
|
Если вам понадобится другая сессия, то воспользуйтесь кодом
<?php
// Переключаемся на сессию name2
session_name("name2");
// Инициируем сессию
session_start();
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(18.06.2005 в 02:41)
| | Почему тогда не работает следующий код?
(некоторые части кода пропущены для экономии места)
<?
// объявление переменных
session_id("h4gf95kw04fr7hjto39tj58fh395jr8s");
session_name("chatsettings");
session_start();
// далее следует некоторый код где вызывается функция ClearList()
function ClearList()
{
// некоторый код
$findusers=mysql_query("select * from tUsers where $time-lasttime > '$timeout'");
for($i=0;$i<mysql_num_rows($findusers);$i++)
{
$users=mysql_fetch_array($findusers);
fwrite($fmsg,"@;system;blue;;;;timeout для $users[login]\n");
session_id($users['id']);
session_name("chat");
session_save_path("sessions");
session_start(); // 33 строка
unset($_SESSION['color']);
session_destroy(); // 35 строка
}
}
?>
|
Ругается следующим образом:
Notice: A session had already been started - ignoring session_start() in D:\SERVER\www\users.php on line 33
Warning: session_destroy() [function.session-destroy]: Session object destruction failed in D:\SERVER\www\users.php on line 35 | |
|
|
|
|
|
|
|
для: Евгений Петров
(18.06.2005 в 16:08)
| | На одной странице наверное не получиться использовать разные группы сессий - нельзя ли обойтись одной сессией, зачем именно две? | |
|
|
|
|
|
|
|
для: cheops
(18.06.2005 в 16:59)
| | Мне нужно где то хранить одну (а может в дальнейшем и не одну) переменную, которая будет видна отовсюду и всегда, в файл я записывать не хочу, выделять целую таблицу в базе данных для этой переменной тоже вроде как то. Может у вас будут какие то предложения? Заранее благодарен. | |
|
|
|
|
|
|
|
для: Евгений Петров
(18.06.2005 в 17:02)
| | Данная переменная должна быть видна только одному посетителю или всем сразу? | |
|
|
|
|
|
|
|
для: cheops
(18.06.2005 в 17:08)
| | Всем сразу. | |
|
|
|
|
|
|
|
для: Евгений Петров
(18.06.2005 в 17:42)
| | Тогда сессией не получится - она действует только в рамках одного посетителя... | |
|
|
|
|
|
|
|
для: cheops
(18.06.2005 в 20:51)
| | Но ведь если знать идентификатор сессии можно извлеч данные для любого пользователя? | |
|
|
|