Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Problem z wylogowaniem
Kerth
post
Post #1





Grupa: Zarejestrowani
Postów: 250
Pomógł: 1
Dołączył: 6.08.2012

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


Cześć,
mam problem z wylogowaniem się po zalogowaniu. Logowanie działa tylko gdy się zaloguję i chcę wylogować nadal pozostaję zalogowany.
To gdy jestem zalogowany:

  1. echo 'Witaj '.$_SESSION['nick'].', <br><a href="logout.php">Wyloguj się</a></br>';


Przenosi mnie do pliku logout.php a jego zawartość to:

  1. <?php
  2. echo "Zostałeś wylogowany";
  3. ?>




Klikam "Wyloguj się" i otrzymuję coś takiego:

  1. Warning: session_destroy() [function.session-destroy]: Trying to destroy uninitialized session in C:\WebServ\httpd\dawid\reg\logout.php on line 2
  2. Zostałeś wylogowany



O co chodzi?
Go to the top of the page
+Quote Post
Beniooo
post
Post #2





Grupa: Zarejestrowani
Postów: 260
Pomógł: 26
Dołączył: 26.01.2012
Skąd: Ci to przyszło do głowy?

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


a session_start dałeś?
Go to the top of the page
+Quote Post
Kerth
post
Post #3





Grupa: Zarejestrowani
Postów: 250
Pomógł: 1
Dołączył: 6.08.2012

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


A to jak mam w login.php na początku session_start() to muszę też dodać to też w logout.php? Tylko nie wiem po co mam zaczynać w logout.php nową sesję skoro chcę usunąć poprzednią.
Go to the top of the page
+Quote Post
mch.frnc
post
Post #4





Grupa: Zarejestrowani
Postów: 73
Pomógł: 4
Dołączył: 15.08.2008

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


Cytat(Kerth @ 13.07.2013, 18:20:14 ) *
A to jak mam w login.php na początku session_start() to muszę też dodać to też w logout.php? Tylko nie wiem po co mam zaczynać w logout.php nową sesję skoro chcę usunąć poprzednią.

Sprawdzaj, czy sesja jest ustanowiona, jeśli tak to ją zakończ, jeśli nie to np. zrób jakieś przekierowanie czy coś.

  1. if ( isset( $_SESSION['nick'] ) ) {
  2. // usun sesję
  3. } else {
  4. // cos innego
  5. }
Go to the top of the page
+Quote Post
Kerth
post
Post #5





Grupa: Zarejestrowani
Postów: 250
Pomógł: 1
Dołączył: 6.08.2012

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


Zrobiłem coś takiego:

  1. <html>
  2. <head>
  3. <meta charset="UTF-8">
  4. <title>Wylogowanie z konta</title>
  5. </head>
  6. <?php
  7. if (isset($_SESSION['zalogowany'])){
  8. echo('Zostałeś wylogowany');
  9. } else {
  10. echo('Error: Nie zostałeś wylogowany');
  11. }
  12. ?>


I zamiast wykonać się kod z session_destroy(); wykonuje się }else{
Możesz mi podpowiedzieć jeszcze co mogę z tym zrobić?
Go to the top of the page
+Quote Post
-Gość-
post
Post #6





Goście







session_start() w kazdym pliku przed DOCTYPE gdzie sesja ma dzialac
Go to the top of the page
+Quote Post
Kerth
post
Post #7





Grupa: Zarejestrowani
Postów: 250
Pomógł: 1
Dołączył: 6.08.2012

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


Dobra dzięki udało mi się to naprawić. Dziękuję za sugestię. Pozdrawiam.
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: 27.08.2025 - 11:18