Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z sesjami
Forum PHP.pl > Forum > PHP
atay
  1. <?php
  2.  
  3.  
  4. if($_POST['pass']==$haslo){ echo "haslo ok"; $_SESSION['tryb']='menu';};
  5. if($_SESSION['tryb']!="") {
  6. switch($_GET['show']) {
  7. case "news"        :$_SESSION['tryb']='news'; break;
  8. case "prasa"    :$_SESSION['tryb']='prasa'; break;
  9. case "przetargi":$_SESSION['tryb']='przetargi'; break;
  10. case "stats"    :$_SESSION['tryb']='stats'; break;
  11. case "menu"        :$_SESSION['tryb']='menu'; break;
  12. }
  13. }
  14.  
  15. ?>

to kawalek mojego kodu, z ktorym nie moge dac sobie rady, a konkretnie chodzi o to, ze w zaleznosci od zmiennej sesyjnej tryb pozwala na administrowanie moim serwisem. Jest tylko jeden problem. Po przejsciu przez instrukcje switch - zmienia ta zmienna na taka jak pokazuje $_GET['show'], ale tylko na czas dzialania skryptu, tzn. gdy jestem na stronie admin.php?show=news strona dziala pieknie, zmienna tryb to news, ale gdy teraz probuje kliknac na link do admin.php (zwykly link) moja zmienna $_SESSION['tryb'] przyjmuje wartosc menu (choc patrzac wglab kodu - powinno sie wtedy pokazac 'haslo ok', a sie nie pokazuje).

Krocej mowiac - wydaje mi sie, ze gdy zadeklaruje jakas zmienna sesyjna na poczatku to w trakcie skryptu moge ja zmieniac, ale i tak na koncu pliku (gdy skrypt sie skonczy wykonywac) przyjmuje ona wartosc zadeklarowana na samym poczatku.

Dodam, ze tego problemu nie mialem, gdy na serwerze bylo ustawione register_globals=on. Zmiana na off cos popsula i nie bardzo wiem co.
Licze na Wasza pomoc

edit: dodam jeszcze jedna rzecz, ktora tez podejrzewalem, ze jednak w moim skrypcie, gdzies dalej przez przypadek zamiast przyrownywania jest znak rownosci czy cos i zmienna ustawia sie na menu. Niestety, to tez odpadlo, bo podmiana linijki
if($_POST['pass']==$haslo){ echo "haslo ok"; $_SESSION['tryb']='menu';};
na
if($_POST['pass']==$haslo){ echo "haslo ok"; $_SESSION['tryb']='prasa';};
sprawia, ze tym razem przy kliknieciu na czysty link strony admin.php wracam ciagle do dzialu 'prasa'.



edit2: juz wiem, mialem zamiast $_SESSION['tryb'] funkcje, ktora zwracala ta wartosc i nie wiem dlaczego, ale to ona wszystko psula. Po wywalniu funkcji jak reka odjal. Prosze o usuniecie tematu smile.gif
.:dR@kE:.
A czy masz na kazdej podstronie na początku:
  1. <?php
  2. ?>

?
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.