|
|
|
| Люди , подскажите другой способ передачи переменной между страницами .кроме сессий и глобальных переменных . Потому-что я ума не приложу почему у меня неработает ?
структура такова : в голове индексного файла регистрирую сессию , далее в случае удачной идентификации пользователя создается переменная $_SESSION ['user']=$_POST['login'];
А далее эта переменная должна жить на протяжении всего сеанса . но это не так . она почему-то умирает при подключении инклюдом файла .
особенности сессии таковы , что идентификатор передается в куках , но вот если передать идентификатор в ссылке гетом , то я думаю все бы работало , но как передать то я знаю , а вот как принять и обработать , нет .
подскажите пожалуйста выход из сложившийся ситуации . | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 10:28)
| | Принять GET? Точно так же, как и POST.
$_GET['name'] | |
|
|
|
|
|
|
|
для: yuk
(18.01.2008 в 10:35)
| | Ну это все понятно . а что с идентификатором дальше делать ? Как извлечь информацию из него ? | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 10:28)
| | Если объявить в начале файла $_SESSION ['user'] (до первого вывода в браузер), то все подключаемые файлы будут это видеть.
Единственное, что $_SESSION ['user']=$_POST['login']; надо делать только при передаче пост-запроса
<?php
start_session();
if ($_POST['login']) {
Запрос к БД или файлу...
$_SESSION ['user']=$_POST['login'];
}
?>
|
| |
|
|
|
|
|
|
|
для: Петр
(18.01.2008 в 10:45)
| | Всмысле обьявить до первого вывода в браузер ? у меня она обьявляется в подключаемом скрипте идентификации пользователя ( в случае его верных входных параметров), а вот когда я ухожу по ссылке в другой файл (котоорый тоже подключается инклюдом) , то там она теряется , хотя в индексном файле она еще присутсвует ! единственный выход по моему это передавать идентификатор в адресной строке , но что с ним делать потом , я незнаю ! зачем он вообще нужен ? и как скрипт может выудить инфу из $_GET['sid'] ? | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 11:05)
| | тебе каждый раз нужно запускать сессию session_start();
если ты откроешь страницу, при загрузке которой не было этой функции, то она будет неопределена (не пропадет, она просто непрочитается из файла-сессии на сервере) | |
|
|
|
|
|
|
|
для: Петр
(18.01.2008 в 10:45)
| | немного неправильно.... до первого вывода в браузер нужно писать только
кстати обратите внимание как написано у меня и как у вас... | |
|
|
|
|
|
|
|
для: KPETuH
(18.01.2008 в 11:06)
| | ну да, наоборот, торопился :) | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 10:28)
| | приведите код! | |
|
|
|
|
|
|
|
для: KPETuH
(18.01.2008 в 11:07)
| | код очень большой что-бы его постить сдесь , вы мне обьясните пожалуйста как принять ( и главное что с ним дальше делать ) идентификатор сессии в адресной строке . | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 11:11)
| | Да , и еще вопрос : почему на одном сервере работает $GLOBALS ( по всему скрипту , песле ее обьявления ) а на другом нет , хотя на обоих регистр глобалс отключены ! | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 11:11)
| | зачем вам идентификатор сессии? код можно прикрепить файлом... без кода разговор безпредметен... | |
|
|
|
|
|
|
|
для: KPETuH
(18.01.2008 в 12:38)
| | Короче , я пришол к выводу что механизм сессии очень несовершенен ! И без записи в куки браузера пользователя переменной идентифицирующей его (пока страница не будет закрыта) в моем случае невозможно !
с радостью выслушаю все за и против такого сметода иденфикации пользователя !
на сколько это безопасно ? | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 13:24)
| | хм сессия и так работает пока браузер не будет закрыть чем она вам не нравиться я не пойму :) | |
|
|
|
|
|
|
|
для: KPETuH
(18.01.2008 в 14:18)
| | Нестабильно работает , хочет работает , хочет нет !
(смотрите выше) | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 14:27)
| | да , но меня волнует вот какой вопрос - не у всех пользователей включены куки !
как тут быть ? | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 14:27)
| | мне некуда смотреть код вы так и не привели :) у меня очень прекрасно все работает с сесиями всегда :) | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 14:27)
| | dima2207, это от того что криво скрипт написали - сессии работают стабильно.
Если куки отключены то ID сессии передается через адресную строку и скрытыми полями форм.
Прочитайте в мануале по РНР - там все написано с кучей примеров. Вопросов не возникнет я думаю | |
|
|
|
|
|
|
|
для: mihdan
(18.01.2008 в 15:09)
| | вопрос стоит не о сессиях в куках , а о куках как таковых ! а по поводу скрипта - то все очень просто , при нажатии на кнопку вход идет проверка на пасс и логин , и в случае если все ок , то в сессию записывается логин пользователя , с которым он идет дальше по сайту ! так вот проблемма заключается в том что при подключении инклюдом файла( к индексному файла в котором сессия еще жива ) , скажем , музыка , в музыке я ее (сессию) уже не наблюдаю , как это понимать ? нафиг она вообще нужна (простите за резкость) эта сессия ! по моему куки ( как таковые ) более надежные , единственная проблемма что они не у всех включены !я разочарован ! | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 16:08)
| | честное слово я не знаю как с вами разговаривать... вы не приводите свой скрипт и хотите чтоб вам помогли... мы не волшебники и гадать не умеем не хотите привести скрипт как хотите!!!!! но никто вам не поможет.... У МЕНЯ ЛИЧНО куча скриптов с сесиями прекрасно работает с инклюдами или нет... и если у вас не работает то 100% у вас кривой скрипт! | |
|
|
|
|
|
|
|
для: KPETuH
(18.01.2008 в 17:29)
| | Публикую кусок сайта .
так вот , все работает норма , до тех пор пока не подключается файл show_con.php в нем сессия теряется ! | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 17:57)
| | скажите вы и в обычной жизни так же общаетесь? я даже не знаю как с вами еще разговаривать... вы предлагаете просмотреть все файлы каторые вы закинули в архив? или вам нужна конкретная помощь? как вы думаете я наверно должен с первого взгляда оценить где вы используете show_con.php?
просмотрел я ваши скрипт местами с чего вы взяли что у вас не работает Сессия... пожалуйста можно побольше подробностей, все таки это вам нужна помощь а не мне :)
следующее замечание: как минимум
в начале show_con.php
у вас в запрос в базу в котором используется $_GET['op'] лучше проверять а передан ли этот параметр. Ищите ошибку в скриптах так как сесии у вас прекрасно работают проверить просто присвойте в index.php сессионной переменной некую константу например
<?
$_SESSION['q']='PRIVET';
|
а выведите ее в приинклюденном файле! | |
|
|
|
|
|
|
|
для: dima2207
(18.01.2008 в 16:08)
| | У вас ошибка в коде. Если не умеете правильно работать с сессиями, не надо разочарововаться. | |
|
|
|