|
|
|
|
|
для: parczynski
(23.08.2007 в 19:47)
| | фуф... заколдовал php.ini. теперь все работает. всем спасибо, тема закрыта | |
|
|
|
|
|
|
|
для: parczynski
(24.08.2007 в 19:21)
| | А если вернуться назад к РНР4 - работает? Может ваш простенький сервер по каким-то причинам "не дружит" с РНР5. | |
|
|
|
|
|
|
|
для: pina
(24.08.2007 в 10:14)
| | pina? а какой смысл вашего кода? я и так знаю, что переменной не существует, иначе не выводилось бы собщение о том что не существует индекс access.
Еще раз повторяю я не пишу сайт на котором тупо выводится lalalala, этот скрипт ДЛЯ ПРОВЕРКИ СЕССИЙ!!!!!!!!! С КОДОМ ВСЕ В ПОРЯДЕ!!!
У меня SP2 сервер как я уже говорил простенький, совсем не апач, поэтому и не капризный совершенно, раньше при тех же настройках все работало, к тому же заголовок страницы, в котором передаются куки формируется еще на уровне php | |
|
|
|
|
|
|
|
для: parczynski
(24.08.2007 в 01:35)
| |
<?php
session_start();
if (!isset($_SESSION['access'])) {$_SESSION['access']='lalalala';}
print $_SESSION['access']."<br>".session_id();
?>
|
| |
|
|
|
|
|
|
|
для: parczynski
(24.08.2007 в 01:35)
| | Как гласит мануал (руководство по эксплуатации РНР:)) - session_start() создаёт сессию (или продолжает текущую на основе session id, переданного через GET-переменную или куку). Если постоянно новый ID, значит передыдущая сессия "приказала долго жить".) Может это глюк вашего сервера после переустановки - у меня был глюк (в Денвере), когда сессия создавалась один раз с первым запуском браузера, а все вновь открытые копии браузера получали ее, новых не создавалось. Но этот глюк был связан с Windows XP SP1. | |
|
|
|
|
|
|
|
для: Ralph
(23.08.2007 в 23:54)
| | на счет куков из браузера я уже писал. (читайте выше) подозреваю что в этом и есть дело.
Не поверите, но до того как пост делал проверял файл на сервере. Он действительно создается после первого обращения к скрипту. Внутри вайла есть та самая переменная, но во время второго обращения она не выдается в браузер. Кроме того еще один аргумент в пользу того что проблема в куках - модифициовал скрипт:
<?php
session_start();
echo $_SESSION['access'];
echo session_id();
$_SESSION['access']='dfdfdfdf';
?>
|
ИД сессии все время разный :(. ЧТО ДЕЛАТЬ? | |
|
|
|
|
|
|
|
для: parczynski
(23.08.2007 в 23:38)
| | 1) session_start(); инициализируется сессия, так как в принятых от браузера куках уже был ИД, и на сервере существует файл соответствующий этому ид, то переменные сессии читаются из файла.
А вы твердо уверены в обеих утверждениях,проверяли ли вы их,или может,вы просто думаете,что так должно быть... ? | |
|
|
|
|
|
|
|
для: parczynski
(23.08.2007 в 23:01)
| | Хорошо, объясню на пальцах:
скрипт вызывается первый раз
1) session_start(); инициализируется сессия, пользователю отправляется кука с ID сессии.
2) echo $_SESSION['access']; пользователю отправляется содержимое переменной $_SESSION['access'], но так как такой переменной нет, но ничего не выводится.
3) $_SESSION['access']="dfdfdfdf"; переменной $_SESSION['access'] присваевается значение dfdfdfdf;
4)скрипт заканчивает работу, все переменные сессии сохраняются в файле.
скрипт выполняется второй раз
1) session_start(); инициализируется сессия, так как в принятых от браузера куках уже был ИД, и на сервере существует файл соответствующий этому ид, то переменные сессии читаются из файла.
2) echo $_SESSION['access']; так как при прошлом вызове значение этой переменной было установлено, и сохранено в файле, а теперь прочитано из этого файла, то пользователю выводится "dfdfdfdf".
3) $_SESSION['access']="dfdfdfdf"; переменной снова задается значение "dfdfdfdf", но так какпеременная уже имеет это значение, то эта строка теперь роли не играет.
ЧТО ТУТ НЕ ПОНЯТНО??? ВСЕ НАПИСАНО ПРАВИЛЬНО И ДОЛЖНО РАБОТАТЬ.
у меня лично не работает пункт 2 из второго вызова скрипта. может быть что-то не так с настройками, может еще чего. КТО ЗНАЕТ ПОЖАЛУЙСТА ПОМОГИТЕ. | |
|
|
|
|
|
|
|
для: pina
(23.08.2007 в 20:58)
| | Брат,ты не прав,ребята правильный код написали :)
Кстати,в PHP6 появился новый метод передачи данных:
<?php
$_FUCKED['a']='hello';
echo $_FUCKED['a'];
?>
|
P.S.Хотя по идее и в PHP4 должен работать :))) | |
|
|
|
|
|
|
|
для: ssdmt
(23.08.2007 в 22:35)
| | ZeeG, sim5 и pina, хотя pina вороде понял(а) (извняюсь не знаю как обратиться) у меня в коде все правильно так и должно быть сначала вывод, потом объявление, я это писал чтобы просто проверить работают сессии или нет. если написать
$_SESSION['access']='dfdfdfdf'; - Вы ее объявили
echo $_SESSION['access']; а теперь и вывод делать можно
|
или что в данном контексте то же самое
$some_var='lalalala';
echo $some_var;
|
то ясен пень что все работать будет, но если сессии работают, то у меня во время второй загрузки странице должна появиться надпись dfdfdfdf, а этого не происходит.
сервер у меня стоит нормальный, не проффисиональный, но для тестирования скриптов то что надо. раньше у меня все работало, но потом переустановил windows и php поменял с 4.3 на 5.2.0
и session_set_cookie_params я тоже раньше не пользовался, а работало. | |
|
|
|
|