Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] odczyt skąd nastąpiło przekierowanie
Forum PHP.pl > Forum > Przedszkole
slawek3422
witam,
jak zwykle mam problem smile.gif

wiec do rzeczy:
mam kilka stron wykonanych w php, zrobiłem panel logowania i teraz chciałbym żeby po wejściu np na http://strona/ppp.php user był poproszony o zalogowanie ... i tu nie ma problemu, robię to tak:

  1. <?php
  2. if($_SESSION['logowanie'] != 'poprawne'){
  3. $przenies = "logowanie.php";
  4. Header("HTTP/1.1");
  5. Header("Location: ".$przenies);
  6.  
  7. } else {
  8.  
  9. // treść strony //
  10. }
  11. ?>


to samo mam z strona http://strona/qqq.php

i teraz chciałbym żeby po tym jak user wpisze poprawny login i haslo nastąpiło przekierowanie spowrotem na stronę z której został przekierowany, tym razem jednak ze zmienna $_SESSION['logowanie'] nie spełniającą powyższego warunku bo nastąpiłoby zapętlenie ... ktoś ma jakieś pomysły jak to wykonać ? smile.gif
piotrekkr
Nie za bardzo rozumiem o jakie zapetlenie ci chodzi ale ja bym to zrobil tak ze dodalbym zmienna back_to przy przekierowaniu
  1. <?php
  2. Header("Location: ".$przenies.'?back_to=qqq.php');
  3. ?>

i pozniej dodal ta zmienna tez do formularza logowania zeby jej nie zgubic i pozniej po zalogowaniu przenosic do strony z $_GET['back_to']. Podobnie mozna zrobnic uzywajac sesji trzeba tylko wywolywac na kazdej stronie session_start zeby nie zgubuic zmiennych sesji.
slawek3422
Cytat(piotrekkr @ 13.08.2007, 22:23:29 ) *
Nie za bardzo rozumiem o jakie zapetlenie ci chodzi ale ja bym to zrobil tak ze dodalbym zmienna back_to przy przekierowaniu
  1. <?php
  2. Header("Location: ".$przenies.'?back_to=qqq.php');
  3. ?>

i pozniej dodal ta zmienna tez do formularza logowania zeby jej nie zgubic i pozniej po zalogowaniu przenosic do strony z $_GET['back_to']. Podobnie mozna zrobnic uzywajac sesji trzeba tylko wywolywac na kazdej stronie session_start zeby nie zgubuic zmiennych sesji.


sesje zawsze startuje, a co do innej zmiennej to nie moge wpisac
  1. <?php
  2. Header("Location: ".$przenies.'?back_to=qqq.php');
  3. ?>

bo przekierowanie nastepuje z wielu stron, jakby bylo z jednej to problemu by nie bylo ... i wlasnie dlatego jakos chce zeby wyciagnac adres strony z ktorej nastepuje przekierowanie
mild
Użyj
  1. <?php
  2. urlencode($_SERVER["REQUEST_URI"])
  3. ?>
slawek3422
po glebszym przeanalizowaniu sposobu od 'piotrkka' przetestowalem to i dziala, wiec wielkie dzieki smile.gif ale rowniez sprawdze to co napial 'mild', jeszcze raz wielkie dzieki Panowie smile.gif
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.