Заголовок сообщения: IE, сессии Добавлено: 5 Октябрь 2005, 16:57:45
Apache 1.3.31, PHP 5.0.4 (Денвер).
Есть система авторизации. При выполнении страницы стартует сессия. Если у пользователя в куках есть параметры login/password или он вводит эти параметры через форму авторизации, то после (удачной) проверки, появляются три переменных в сессии: имя, айди, уровень (level) и, если пользователь вводил информацию через форму, ему в куки записываются логин/пасс.
И в FF и в опере всё работает. Эксплорер не реагирует на ввод данных через форму вообще.
При этом строчка "session_cache_limiter("private");" перед стартом сессии не помогает.
Сейчас пробую понять, что вот это такое.
Эксплорер и не должен реагировать на ввод данных в форму.
На ввод должен реагировать твой скрипт.
который стартует сессию,
которая пошлёт браузеру куку.
и только после этого очередь дойдёт до браузера, который будет эту куку серверу возвращать.
Целых 4 этапа. И ты хочешь, чтобы мы - не видя ни твоего скрипта, ни твоего сервера, ни твоего эксплорера - отгадали, в каком из них у тебя косяк.
Тебе не кажется, что у тебя самого это получится немного проще?
Ты проверял - данные до скрипра доходят? сессия стартует? Сервер куку посылает? В каком виде? Браузер её возвращает? В каком виде? Сервер по этой куке сессию стартует?
Действительно проверь а сессия стартует или нет. Если да, что попробую отключить куки. Сессия и без них работает, только везде вклинивает ID сессии. А вообще, я не первый раз сталкиваюсь с тем, что у людей проблемы там или там и увсех пакед Denver. У меня стоят полные установки Apache PHP MySQL … все ставил и никогда проблем не было.
сессия по умолчанию не работает без кук. Её наджо для этого специально настраивать. Если бы ты хоть раз в жизни заглянул в файл php.ini, ты бы даже узнал - почему.
проблемы у людей происходят только от кривых рук.
Или - вот как у тебя - от недостатка знаний.
Но не из-за пакета денвер. Запомни это хорошенько.
Чебурген, я читал phpfaq.
Дело в том, что после отправки данных хэдером происходил редирект на главную страницу.
Когда убрал редирект, посмотрел: сессия стартует, переменные $_SESSION -- записываются. Хэдер set-cookie отправляется, но эксплорер их не записывает (не возвращает).
вопрос же не в том, чтобы читать. а в том, чтобы СДЕЛАТЬ то, что там написано. по шагам проследить работу сессий. а по твоему вопросу ведь не видно, чтобы ты сделал хоть что-то из того, что там написано
Цитата:
Хэдер set-cookie отправляется,
кука нормальная? ничего лишнего в неё не пишется?
когда в этот форум пишешь - у тебя нормально сессии работают, в куках?
Акела, в настройках стояло "accept all cookies", политика безопасности -- ручная, разрешено почти всё что можно. Не знаю, почему. Такая ерунда уже не первый раз.
(sp), ну это старенькая. Понятно. Знаете ли, батенка... Кажется мне, что малварь Вашу машину поела. Поищите антималварьники и попробуйте почистить. (Я понимаю, что Вы разницу знаете, я эт для других — антивирусники не помогут.)
Акела, версия о malware кажется маловероятной.
Потому что -- а) откуда такая странная ошибка -- неработающая сессия только на локалхосте (обычные куки работают)? б) никаких других косяков за машиной не замечено.
Впрочем, почистить всё равно попробую. Только попозже *).
Я только не понимаю: как проблемы с php.ini могут находить отражение в неправильной работе одного браузера из трёх при том, что куки у него принимаются?
bE(o0L, мне тоже интересно. Ты наверное, что-то конкретное имел в виду, а не просто сбрехнул первое, что под руку попалось? Какие именно настройки ты имел в виду?
(sp), а ты, всё-таки, не привёл пример куки. Я думаю, не стоит тратить чужое время больше.
Чебурген, во-первых, чужое время тратить я не собирался, так как для себя посчитал вопрос исчерпанным.
Во-вторых, пожалуйста, заголовок который отправляется эксплореру:
Акела, реферер абсолютно нормальный. у меня таких десяток.
(sp), ок, извини. Я просто подумал, что ты не посмотрел таки куки.
А здесь видно, что всё нормально.
Только маленькое замечание - ты перепутал местами, кто посылает, а кто отвечает.
На самом деле это браузер отправляет запрос серверу, а сервер отвечает.
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.