Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Problem z sesją
kubagogo
post 13.10.2010, 13:35:44
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 13.10.2010

Ostrzeżenie: (0%)
-----


Witam to mój pierwszy post na tym forum dlatego w razie błędów z jego zamieszczeniem i trescią proszę o wyrozumiałość.

Tworze uwierzytelnianie na strone internetową. Rejstracja użytkownika i logowanie już działa jednka mam problem z sesja.
Po pierwsze czy dobrze rozumiem. Sesja ma tak jakby pamietać uzytkowniaka, który został zalogowany bez względu na to na jakiej podstronie naszego serwisu się znajduje?

Sprawa wyglada nastepująco
Oto skrypt
Kod
<?php

session_start();
require('funkcje_dolaczone.php');

$nazwa_uzytkownika=$_POST['nazwa_uzytkownika'];
$haslo=$_POST['haslo'];

if($nazwa_uzytkownika && $haslo)
{
    try
    {
        zaloguj($nazwa_uzytkownika, $haslo);
        //jezeli uzytkownik jest w bazie danych uzytkownikow zostanie zalogowany i utworzona zostanie sesja
        $_session['poprawny_uzytkownik']=$nazwa_uzytkownika;
    }
    catch(exception $blad)
    {
        naglowek_html();
        menu_pionowe_html();
        echo $blad->getMessage();
        stopka_html();
        exit;
    }
}
naglowek_html();
menu_pionowe_html();
sprawdz_uzytkownika();

echo'     czemu nie zalogowany?';
echo $_session['poprawny_uzytkownik'];

if (isset($_session['poprawny_uzytkownik']))
echo $_session['poprawny_uzytkownik'];
stopka_html();

?>


i teraz tak kiedy uzytkownik zostanie sprawdzony w bazie danych tworzymy nagłówek i menu. I pojawi asie problem. Chciałem, żeby funkcja sprawdz_uzytkownika() sprawdzala czy jest on zalogowany i wyświetlala jego nazwe. Jednek to nie nasepuje przechodzi od razu do else i wyswietla, że nikt nie zalogowany. Natomiast jak pozniej sprawdzam wartość zmiennej to pokazuje ona nazwe uzytkownika to samo gdy sprawdzam to isset.
kod funkcji sprawdz_uzytkwonika()
Kod
function sprawdz_uzytkownika($_session)
//sprawdza czy uzytkownik jest zalogowany
{
    if (isset($_session['poprawny_uzytkownik']))
    {
        echo $_session['poprawny_uzytkownik'];
    }
    else
    {
        //naglowek_html();
        //menu_pionowe_html();
        echo'Nikt nie zalogowany';
        //stopka_html();
        //exit;
    }
}


Kiedy do funkcji dam parametr $_session to niby działa, ale czy wtaki wlansie sposob ma się to odbywać?

Proszę o jakies sugestie
Go to the top of the page
+Quote Post
hind
post 13.10.2010, 13:40:22
Post #2





Grupa: Zarejestrowani
Postów: 142
Pomógł: 24
Dołączył: 30.03.2009
Skąd: Rokitno Szlacheckie

Ostrzeżenie: (0%)
-----


$_SESSION dużymi literami (php rozróżnia wielkość liter dla zmiennych)
Go to the top of the page
+Quote Post
kubagogo
post 13.10.2010, 13:45:32
Post #3





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 13.10.2010

Ostrzeżenie: (0%)
-----


Takie głupi błąd z mojej strony już działa poprawinie.
Wielkie dzięki za pomoc.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 19:13