Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zmienna w sesji - problem
Forum PHP.pl > Forum > PHP
Birkoff
Witam

Sprawa wygląda tak:

Przetwarzając dane z formularza umieszczam jakieś informacje w bazie danych i generuję sobie komunikat do wyświetlenia na stronie głównej:

  1. <?php
  2.  
  3. // jakis kod wczesniej...
  4.  
  5. $message='Pacjent został dodany do bazy danych';
  6. session_register(&#092;"message\");
  7. header(&#092;"Location: index.php\");
  8.  
  9. //koniec
  10. ?>


Do tej pory wszystko działa jak należy - umieściłem sobie tekst powiadomienia w sesji, przechodzę do strony głównej, gdzie chcę wyświetlić ten tekst - ALE TYLKO RAZ.

Wiec zrobiłem tak:

  1. <?php
  2. include (&#092;"cfg/config.inc.php\");
  3.  
  4. if (session_is_registered(&#092;"message\")) {
  5. $wiadomosc=$_SESSION['message'];
  6. session_unregister(&#092;"message\");
  7. }
  8. ?>


Teoretycznie wg mnie powinno być tak, że dalej w kodzie strony wyświetlam sobie zmienną $wiadomość jeśli ma ona jakąś wartość.

PROBLEM: zmienna $wiadomość nie ma nadanej wartości, jest pusta...

Dlaczego? Jeśli zakomentuję polecenie session_unregister("message") wszystko jest ok, jesli odkomentuję - nie działa...

Czy ktoś ma jakiś pomysł?

Pozdrawiam
Coyote
juz sie raczej nie uzywa session_register .... uzywaj samo :
$_SESSION['cos'] = $cos ...
tak napewno zadziala; 0
Birkoff
Niestety dalej to samo. Nie w tym problem lezy sad.gif

  1. <?php
  2.  
  3. //jakis kod wczesniej
  4. $message='Lekarz został dodany do bazy danych';
  5. $_SESSION['message']=$message;
  6. header(&#092;"Location: index.php\");
  7.  
  8. ?>


a w index.php:

  1. <?php
  2.  
  3. if ($_SESSION['message']!='') {
  4. $wiadomosc=$_SESSION['message'];
  5. $_SESSION['message']='';
  6. }
  7.  
  8. ?>


Zmienna $wiadomosc dalej nie ma wartości...
sobstel
mozliwe ze nie jest przekazywany id sesji do drugiego dokumentu. moze sie tak dziac gdy np. masz wylaczone cookies (robisz przekierowanie na index.php a tam nie ma id sesji doklejonego) albo wchodzisz pierwszy raz na strone i cookies "nie zdazy" sie ustawic.

sprobuj zamiast headera dac linka do drugiego dokumentu i kliknac na niego i wtedy zobaczyc czy zmienna sesyjna jest ustawiona.
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.