Forum Webscript.Ru
Программирование => PHP => Тема начата: CyberAlex от 06 Июля 2003, 00:09:20
-
У меня небольшая проблема с сессиями ;-) Запускаю я ее
правильно, через ф-ю session_start(). Но мне на этой странице
выводится следующая ошибка:
Warning: open(/tmp\\sess_27e12aec0bf681729c31133aac8ced78, O_RDWR) failed: m (2)
Мне кажется, у меня что-то не то с настройками. Наверное файл сесии
находится не там. Возможно его надо прописывать в php.ini. Но я искал
и у меня такого файла нет.
Помогите плиз. Очень нужно.
-
Файл php.ini-dist находится в папке с php и его надо скопировать в каталог windows (насколько я понимаю, мы ведь про виндовоз говорим?) сразу после установки php и переименовать в php.ini. В этом файле, кроме большого количества важных настроек, есть один параметр - session.save_path.
По-умолчанию он равен /tmp, а ты наверняка захочешь поменять его на что-то типа C:/temp или C:/windows/temp
Кстати, будет в пути использоваться прямой слеш или обратный - значения не имеет. Можешь хоть комбинировать их.
-
Спасибо за совет. Но у меня такого файла (php.ini) нет на всем диске. Странно, но факт. Я его сам создал, закинул куда ты указал. Вот что я в нем написал:
session.save_path=C:\\TEMP
session.use_cookies=1
session.use_trans_sid=1
Ошибка исчезла, но при переходе на другую страницу сохраненные переменные в сессии пропадают ;) хотя я сделал все правильно. Мне кажется, что просто в php.ini еще многого не хватает. Может кто пришлет мне свой? Буду благодарен ;)
cyber-alex@mail.ru
-
Искать нужно было не php.ini, а php.ini-dist.
Свой php.ini я тебе слать не буду - там ничего интересного.
Сейчас отправлю стандартный - php.ini-dist от версии 4.3.2.
И перестань писать болдом!
-
CyberAlex:
хотя я сделал все правильно.
Я бы на втоем месте не был так уверен.
Прочти http://faq.phpclub.net/session и проверь - действительно ли все правильно.
-
Спасибо за советы. Файл я закинул куда надо. В рез-те у меня теперь переменные в сессии сохраняются, но параметры на *.php?val=... теряются. Хотя до этого все было ок.
А до этого я понял помечу у меня ичего не выходило - для хранения переменных сессии я исп. массив $_SESSION, а сейчас использую $HTTP_SESSION_VARS, т.к. я прочитал, что первый начался только с версии 4.1. А у меня 4.0 стоит ;)
Проверял на странице http://faq.phpclub.net/session. Все сделал правильно. Почему у меня теряются параметры? Может из-за куков?
-
если у тебя 4.1
то переменные, которые "теряются", ты найдешь в массиве
$HTTP_GET_VARS
т.е, если ты вызовешь скрипт
*.php?val=...
и
echo $HTTP_GET_VARS[\'val\'] не выведет тебе три точки, то это означает, что тебе надо срочно протрезветь.