[php] Nie działają u mnie sesje ?
[php] Nie działają u mnie sesje ?
Mam 2 takie przykładowe pliki . W jednym z nich rejestruje zmienną i przekierowuję się na drugą stronę. Na drugiej chcę odczytać tą zarejestrowaną zmienną.
Kody PHP:
plik zapis.php
[php]<?php
session_start();
$_SESSION['name'] = "byleco" ;
header("Location : http://localhost/odczyt.php");
exit();
?>[/php]
plik odczyt.php
[php]<?php
session_start();
if(!isset($_SESSION['name']))
{
print("brak sesji");
}
else
{
echo "<p> Witaj {$_SESSION['name']} </p>";
}
?>[/php]
Po odpaleniu pliku zapis.php przekierowuje mnie i pokazuje komunikat brak sesji. Nie wiem jak sobie z tym poradzić. Katalog na sesje mam ustawiony na /tmp i widzę tam że w jednym pliku rejestruje mi tą zmienną , ale po przejściu na tą drugą stronę już jej nie pamięta.
To już zaczyna być dla mnie denerwujące bo nie mam pojęcia co jest nie tak. Wygląda na to , że zamiast "kontynuować" sesję w pliku odczyt.php skrypt tworzy nową sesję. Może ktoś pomóc ?
Kody PHP:
plik zapis.php
[php]<?php
session_start();
$_SESSION['name'] = "byleco" ;
header("Location : http://localhost/odczyt.php");
exit();
?>[/php]
plik odczyt.php
[php]<?php
session_start();
if(!isset($_SESSION['name']))
{
print("brak sesji");
}
else
{
echo "<p> Witaj {$_SESSION['name']} </p>";
}
?>[/php]
Po odpaleniu pliku zapis.php przekierowuje mnie i pokazuje komunikat brak sesji. Nie wiem jak sobie z tym poradzić. Katalog na sesje mam ustawiony na /tmp i widzę tam że w jednym pliku rejestruje mi tą zmienną , ale po przejściu na tą drugą stronę już jej nie pamięta.
To już zaczyna być dla mnie denerwujące bo nie mam pojęcia co jest nie tak. Wygląda na to , że zamiast "kontynuować" sesję w pliku odczyt.php skrypt tworzy nową sesję. Może ktoś pomóc ?
Re: [php] Nie działają u mnie sesje ?
sprawdz php.ini. wlacz wrzucanie identyfikatora sesji do GETa, sprawdz tez czy masz wlaczone cookiesy.
Re: [php] Nie działają u mnie sesje ?
Podam moje bieżące (niektóre) ustawienia dotyczące sesji :
Może ścieżka określająca lokalizację cookies ma być inna ?
W tej lokalizacji znajdują się moje wszystkie cookies, natomiast strony odpalam z Apache/../htdocs/
Poza tym chciałbym się obejść bez identyfikatora sesji. Po prostu żeby obsługa sesji działała tak jak to widzę w manualu do PHP
session.save_path = /tmp
session.use_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = c:/Documents and Settings/Administrator/Cookies
session.cookie_domain = c:/Documents and Settings/Administrator/Cookies
session.use_trans_sid = 0
Może ścieżka określająca lokalizację cookies ma być inna ?
W tej lokalizacji znajdują się moje wszystkie cookies, natomiast strony odpalam z Apache/../htdocs/
Poza tym chciałbym się obejść bez identyfikatora sesji. Po prostu żeby obsługa sesji działała tak jak to widzę w manualu do PHP
Re: [php] Nie działają u mnie sesje ?
[php]<?php
session_start();
/* !!! */ session_register('name'); /* !!! */
$_SESSION['name'] = "byleco" ;
header("Location : http://localhost/odczyt.php");
exit();
?>[/php]
session_start();
/* !!! */ session_register('name'); /* !!! */
$_SESSION['name'] = "byleco" ;
header("Location : http://localhost/odczyt.php");
exit();
?>[/php]
-
Wojciech Kocjan
- Zaczyna działać

- Posty: 427
- Rejestracja: sob gru 14, 2002 10:51 am
Re: [php] Nie działają u mnie sesje ?
Sprobuj dac tak:
Kod: Zaznacz cały
; The path for which the cookie is valid.
session.cookie_path = /
; The domain for which the cookie is valid.
session.cookie_domain =Mam chyba IDENTYCZNY problem
Mam chyba IDENTYCZNY problem więc pewnie to jakaś bardziej powszechna sprawa…
Mam kłopot z przekazywaniem zarejestrowanych poprzez mechanizm sesji zmiennych - session_register(„zmienna”). Gdy usiłuję ja odczytać poprzez (PHP 4.3x) $zmienna=$_SESSION[„zmienna”]; zawsze otrzymuję zmienną o wartości NULL.
Problem występuje tylko na moim domowo-roboczym serwerze. Na komercyjnych serwerach wszystko jest OK!
Czy ktoś wie jak rozwiązać ten problem? Grzebałem w różnych ustawieniach i nic…
Mam kłopot z przekazywaniem zarejestrowanych poprzez mechanizm sesji zmiennych - session_register(„zmienna”). Gdy usiłuję ja odczytać poprzez (PHP 4.3x) $zmienna=$_SESSION[„zmienna”]; zawsze otrzymuję zmienną o wartości NULL.
Problem występuje tylko na moim domowo-roboczym serwerze. Na komercyjnych serwerach wszystko jest OK!
Czy ktoś wie jak rozwiązać ten problem? Grzebałem w różnych ustawieniach i nic…
Re: [php] Nie działają u mnie sesje ?
a po co 3 linia? skoro czwarta robi to samo, i lepiej, bo przy register_globals=off funkcja session_register() nie dziala.wixor pisze:[php]<?php
session_start();
/* !!! */ session_register('name'); /* !!! */
$_SESSION['name'] = "byleco" ;
header("Location : http://localhost/odczyt.php");
exit();
?>[/php]
Re: [php] Nie działają u mnie sesje ?
Po to, żeby zaczęło działać! wiem, bo sam miałem daawno temu ten problem - nie wystarczy zapisać zmienną do tablicy, trzeba najpierw powiedzieć php, że taka zmienna ma w obóle w sesji występować... odsyłam do manuala
Re: [php] Nie działają u mnie sesje ?
niestety, gadasz bzdury. session_register(), zostawiono wylacznie dla zgodnosci skryptow. Od PHP 4.1.0 uzywa sie po prostu wpisu do superglobalnej $_SESSION. Zreszta masz tu wyciag z manulala:wixor pisze:Po to, żeby zaczęło działać! wiem, bo sam miałem daawno temu ten problem - nie wystarczy zapisać zmienną do tablicy, trzeba najpierw powiedzieć php, że taka zmienna ma w obóle w sesji występować... odsyłam do manuala
cytat oczywiscie z oficjalnego manula : [manual]session_register[/manual]Przy użyciu $_SESSION (lub $HTTP_SESSION_VARS) nie powinno się używać session_register(), session_is_registered() i session_unregister().
Re: [php] Nie działają u mnie sesje ?
Cóż, może i bzdury, ale wiem, że jak dodałem kiedyś tam dawno temu to ruszyło, a jak wywaliłem to spowrotem przestało działać... A php było 4.3.x ......
Re: [php] Nie działają u mnie sesje ?
hmm, ciekawe rzeczy opowiadasz, tylko szkoda ze absolutnie niemozliwe. Zrozum ze register_session to nie ta bajka. W zyciu nie uzylem tej funkcji, a sesje dzialaja mi bez zarzutu.wixor pisze:Cóż, może i bzdury, ale wiem, że jak dodałem kiedyś tam dawno temu to ruszyło, a jak wywaliłem to spowrotem przestało działać... A php było 4.3.x ......

