Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sesje nie działają
Forum PHP.pl > Forum > PHP
spenalzo
Mam taki kod logujący użytkownika i niby wszystko jest OK, ale zmienna $HTTP_SESSION_VARS["uid"] jest pusta. Z bazy dane wyciągane są poprawnie - sprawdzałem. Dodam że adresy stron są przekazywane tak index.php/konto/index/ (nie wiem, czy ma to jakieś znaczenie).
Co może być przyczyną tego błędu?
[php:1:169d697c88]
<?php
include("config.php");
if(empty($HTTP_SESSION_VARS["uid"]))
{
polacz();
$login=$HTTP_POST_VARS["login"];
$haslo=$HTTP_POST_VARS["haslo"];
$q=mysql_query("SELECT login, haslo, ID FROM ".$__table["konta"]." WHERE login='$login' AND haslo='$haslo'");
$t=mysql_fetch_array($q);
if($t["login"]==$login && $t["haslo"]==$haslo)
{
session_start();
$uid=$t["ID"];
session_register("uid");
$HTTP_SESSION_VARS["uid"]=$t["ID"];
Header("Location: ".$__page."konto/index/");
}
else
{
Header("Location: ".$__page."konto/badlogin/");
}
}
else
{
Header("Location: ".$__page."konto/index/");
}
?>[/php:1:169d697c88]
KaMeLeOn
session_start() na samą górę...
spenalzo
No i nadal dupa.

I jeszcse pytanko: który sposób jest lepszy? Ten w 14 czy 15 linii?
KaMeLeOn
[php:1:b7303a9018]<?php
$_SESSION['uid'] = $t['ID'];
?>[/php:1:b7303a9018]
spenalzo
Ja mam 4.0.5 a zmienne zaczynające się od _ są od wersji 4.1.0
KaMeLeOn
[php:1:27badd14a8]<?php
$HTTP_SESSION_VARS['uid'] = $t['ID'];
?>[/php:1:27badd14a8]
Cytat
Ja mam 4.0.5 a zmienne zaczynające się od _ są od wersji 4.1.0

Myślę, że nadszedł już czas na zmianę wersji...
spenalzo
Cytat
Myślę, że nadszedł już czas na zmianę wersji...

Ja wiem biggrin.gif
Tylko, że mam foxserva i na pewno nie będzie mi się chciało za każdym razem php doinstalowywać. sad.gif
Dziwne z tymi sesjami, bo w innych projektach na tym samym serwie śmigają aż miło - może to przez te linki.
FiDO
Cytat
Tylko, że mam foxserva i na pewno nie będzie mi się chciało za każdym razem php doinstalowywać.  :(

Jaki problem zainstalowac raz a dobrze i potem przy kazdym reinstalu systemu odpalac tylko odpowiedniego .bat'a ktory przekopiuje php.ini,php4ts.dll ewentualnie my.cnf i inne jesli ktos ma potrzeby.
Ja tak robie, bo nie chcialoby mi sie za kazdym razem walic wszstko od nowa. A jak wychodzi nowa wersja php, to tlyko nadpisuje wszystko w katalogu, kopiuje nowy php4ts.dll (i php.ini jesli doszlo cos nowego).
Zreszta niedlugo bede mial swojego FoxServ'a winksmiley.jpg z wszystkim up-to-date zajmujacego wzglednie malo, wiec moze sie skusisz smile.gif
Szczegoly -> http://forum.php.pl/viewtopic.php?t=3757&start=10
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.