Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> przesylanie danych sesji
-woo-
post
Post #1





Goście







Witam chcialbym uzyskac pewnych informacji na temat przekazywania zmiennych sesyjnych na kolejne podstrony... probowalem wiele rzeczy ale albo mi nie wychodzilo albo sam juz nie wiem o co chodzi..

Calosc sklada sie z formularza logowania main.php z ktorego przekazuje zmienne logowania 'postem' do skryptu log.php. Tam dane porownywane sa z rekordami loginow i hasel w mysql, po pomyslnym zakonczeniu nastepuje zaladowanie strony log.php. Nastepnie na tej stronie mam odnosnik do kolejnej strony, w tym przypadku panel.php. Nie wychodzi mi przekazywanie danych sesyjnych do tej strony...

Moglby ktos pokazac jakis przykladzik jak to zrobic?
Go to the top of the page
+Quote Post
mike
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(woo @ 6.01.2008, 19:33:47 ) *
Moglby ktos pokazac jakis przykladzik jak to zrobic?
Pokaż jak to robisz a powiemy Ci gdzie leży błąd.
Zwyczaje panujące na tym forum każą pomagać a nie dawać gotowe przykłady (to w ostateczności).
Go to the top of the page
+Quote Post
-Gość-
post
Post #3





Goście







Ogolnie probowalem w ten sposob: po pomyslnym wykonaniu warunku porownania zmiennych logowania z rekordami w bazie(log.php), probowalem przeslac jakiekolwiek dane a pozniej odebrac je w panel.php. Mianowicie w miejscu w ktorym wspomnialem (log.php) dopisuje

echo "<form method=\"post\" action="\panel.php\">";
echo "<input type=\"hidden\" name="\logged\" value=\"1\">;

w panel.php :

session_start();

$_POST['logged']=$_SESSION['auth'];
if (!isset($_SESSION['auth']==1)){
exit();
}


Oczywiscie to moga byc banialuki, jestem 'rookie' w php (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
qrees
post
Post #4





Grupa: Zarejestrowani
Postów: 275
Pomógł: 44
Dołączył: 23.11.2007

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


Cytat(Gość @ 6.01.2008, 19:57:08 ) *
Ogolnie probowalem w ten sposob: po pomyslnym wykonaniu warunku porownania zmiennych logowania z rekordami w bazie(log.php), probowalem przeslac jakiekolwiek dane a pozniej odebrac je w panel.php. Mianowicie w miejscu w ktorym wspomnialem (log.php) dopisuje

echo "<form method=\"post\" action="\panel.php\">";
echo "<input type=\"hidden\" name="\logged\" value=\"1\">;

w panel.php :

session_start();

$_POST['logged']=$_SESSION['auth'];
if (!isset($_SESSION['auth']==1)){
exit();
}


Oczywiscie to moga byc banialuki, jestem 'rookie' w php (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)


No cóż, isset($_SESSION['auth']) zawsze będzie false, bo nigdzie w kodzie nic na $_SESSION['auth'] nie przypisujesz.
Gdzieś powinieneś mieć wpisane przynajmniej $_SESSION['auth'] = true;. Czyli przykładowo:

  1. <?php
  2. if(isset($_POST['logged']))$_SESSION['auth'] = true;
  3. ?>

Natomiast zupełnie niepotrzebna jest linijka: $_POST['logged']=$_SESSION['auth'];
Nie przypisuj nigdy nic na $_POST[...]. Nie jest to dobra praktyka.
Go to the top of the page
+Quote Post
-woo-
post
Post #5





Goście







No nie za bardzo to zrozumialem:) Widzialem gdzies pewna metode 'header'.. czy ona nie jest latwiejsza do zastosowania w tej sprawie?
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 18.09.2025 - 06:15