Люди, у меня такая проблема. Когда мой сайт находится на Windows сервере, все хорошо сессия держится и не слетает, но на Linux сервере сессия слетает постоянно!
Подскажите как исправить данное неудобство!
1. ЯД - 20 Февраля, 2008 - 10:29:51 - перейти к сообщению
2. evgenijj - 20 Февраля, 2008 - 10:53:24 - перейти к сообщению
ЯД пишет:
но на Linux сервере сессия слетает постоянно!
Блин, на клей посади.
Давай уж подробненько. Что за скрипт, какие настройки для сессии в php.ini и т.п.
3. Mister - 20 Февраля, 2008 - 11:12:31 - перейти к сообщению
А нельзя ли код скрипта посмотреть?
4. ЯД - 20 Февраля, 2008 - 11:22:22 - перейти к сообщению
Вот часть скрипта авторизации, в других скриптах просто стартует сессия и проверяется наличие $_SESSION['user_id'].
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?PHP
- include ('mysql.php');
- {
- // и переносим его на главную
- exit;
- }
- {
- // юзер уже залогинен, перекидываем его отсюда на закрытую страницу
- exit;
- }
- {
- $query = "SELECT `salt`
- FROM `users`
- WHERE `email`='{$email}'
- LIMIT 1";
- {
- // итак, вот она соль, соответствующая этому логину:
- $salt = $row['salt'];
- $query = "SELECT `id`
- FROM `users`
- WHERE `email`='{$email}' AND `password`='{$password}'
- LIMIT 1";
- // если такой пользователь нашелся
- {
- $_SESSION['user_id'] = $row['id'];
- $_SESSION['email']= $row['email'];
- $time = 86400; // ставим куку на 24 часа
- {
- }
- exit;