Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]wylogowanie
Forum PHP.pl > Forum > Przedszkole
colachips
Witam,

Czy ktos moze wie dlaczego po kliknieciu "wyloguj" nadal w pasku zostaje wyloguj=1?

  1. <?php
  2. if (isset($_GET['wyloguj']) && $_GET['wyloguj']==1) {
  3.        $_SERVER['PHP_AUTH_PW']='';
  4.        header('Location: '.$_SERVER['HTTP_HOST'].'header1.php'); // <- masz mnie przekierowac na "header1.php" a nie na "header1.php?wyloguj=1" :/
  5.    }
  6.    if ((isset($_SERVER['PHP_AUTH_PW'])) && ($_SERVER['PHP_AUTH_PW'] == 'tulipan')) {
  7.        echo 'Witaj ';
  8.        echo '<a href='.$_SERVER['PHP_SELF'].'?wyloguj=1>Wyloguj</a>';
  9.    } else {
  10.        header('WWW-Authenticate: basic realm="blog L"');
  11.    }
  12. ?>
bartg
Zgaduję ale może po prostu nie wchodzi do ifki i przekierowanie się nie wykonuje? Zakomentuj header('Location: '.$_SERVER['HTTP_HOST'].'header1.php'); , i daj echo 'wylogowanie'; i powiedz co ci się wyświetla smile.gif
colachips
  1. <?php
  2. if (isset($_GET['wyloguj']) && $_GET['wyloguj']==1) {
  3.        $_SERVER['PHP_AUTH_PW']='';
  4.        echo 'lalalal';
  5.        exit;
  6.        //header('Location: '.$_SERVER['HTTP_HOST'].'header1.php');
  7.    }
  8. ?>


wyswietla 'lalalal', w pasku jest nadal ?wyloguj=1. interesuje mnie dzialanie tego zakomentowanego header() - dlaczego on przekierowuje na 'header1.php?wyloguj=1' a nie na czyste 'header1.php'?
Fifi209
A w ogóle przekierowuje? Przecież nagłówki wysyła się pierwsze.
Poza tym wyprintuj:
Kod
print_r($_SERVER);
i tu wrzuć.
colachips
gdyby nie przekierowywalo wpierw naglowka to dostalbym NOTICE.. print_r na nic sie tutaj nie przyda (przed wylogowaniem istnieje PHP_AUTH_PW, po wylogowaniu juz nie - wiec jest ok)
Fifi209
Kod
//header('Location: '.$_SERVER['HTTP_HOST'].'header1.php');


na
Kod
//header('Location: http://'.$_SERVER['HTTP_HOST'].'/header1.php');


Próbowałeś ?

@edit
Oczywiście bez komentarza haha.gif
colachips
niestety nadal jest ?wyloguj=1 smile.gif
Fifi209
Nie wiem, u mnie na apache wszystko dobrze działa. I z jednego pliku do drugiego i z tego samego do tego samego. ;p

Spróbuj zrobić przekierowanie w html/javascript
Pilsener
A nie łaska po dokonaniu przekierowania zabić parser die lub exit? Przecież to standardowa w takich wypadkach czynność.
Fifi209
Cytat(Pilsener @ 22.03.2009, 16:54:19 ) *
A nie łaska po dokonaniu przekierowania zabić parser die lub exit? Przecież to standardowa w takich wypadkach czynność.


Przecież ma exit'a w skrypcie...
decha-design
Cytat(fifi209 @ 22.03.2009, 19:13:42 ) *
Przecież ma exit'a w skrypcie...


A pokażesz mi gdzie? snitch.gif Bo chyba ja też jestem ślepy
Fifi209
Cytat(colachips @ 22.03.2009, 13:11:11 ) *
  1. <?php
  2. if (isset($_GET['wyloguj']) && $_GET['wyloguj']==1) {
  3.        $_SERVER['PHP_AUTH_PW']='';
  4.        echo 'lalalal';
  5.        exit;
  6.        //header('Location: '.$_SERVER['HTTP_HOST'].'header1.php');
  7.    }
  8. ?>


wyswietla 'lalalal', w pasku jest nadal ?wyloguj=1. interesuje mnie dzialanie tego zakomentowanego header() - dlaczego on przekierowuje na 'header1.php?wyloguj=1' a nie na czyste 'header1.php'?


Jak dla mnie jest.
Pilsener
Ale header jest zakomentowany...

Niech da po header exit, a jeśli nie pomoże, to prosimy o kod pliku header1.php, bo może tam leży problem.
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.