![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 101 Pomógł: 7 Dołączył: 16.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
witam, siedze juz nad tym 3 dzien, pytalem 2 razy na forum, pytam ponownie, poniewaz metoda wyciania fragmentow kodu doszedlem gdzie jest blad.
W projekcie stosuje "przyjazne linki" poprzez zastosowanie $_SERVER['PATH_INFO']:
Dzieki temu otrzymuje adres url: domena.pl/strona/podstrona1/podstrona2/ (strona plik fizyczny - podstrony - moje wymyslone nazyw dla dzialow). Problem pojawia sie przy pobraniu, a nawet nie tyle przy pobraniu co sprawdzeniu wartosci wpisanego adresu url:
Wynik print_r($_rSubsections) dla url np: domena.pl/strona/ustawienia/ Array ( [0] => Array ( [isExist] => 1 [value] => ustawienia [code] => b:000 ) [1] => Array ( [isExist] => ) [2] => Array ( [isExist] => ) ) I do tej pory jest ok. Znaczy wszystkie mozliwe podeskcje sa zapisane w tablciy php, czy pliku xml, czy bazie danych. Wyglada to tak: (nazwa) ustawienia | (kod) b:000 | (pelna_nazwa) ... | (tytul) ... | itd... I teraz zwyczajnie chce sprawdzic, czy uzytkownik podal prawidlowy adres url, czyli poruwnuje pobrana z url wartosc (w tym przypadku "ustawienia") i sprawdzam jej istnienie w konfiguracji, jak jest ok, pobieram kod (b:000) ktorym sie posluguje w pozostalej czesci aplikacji dla tej podesekcji. Jesli zostanie podana bledna wartosc url np: domena.pl/strona/ustawienia/podsekcja/ Array ( [0] => Array ( [isExist] => 1 [value] => ustawienia [code] => b:000 ) [1] => Array ( [isExist] => 1 [value] => podsekcja ) [2] => Array ( [isExist] => ) ) Nie zostanie jej przypisany kod podeskcji. I teraz sprawdzam to np tak:
I teraz blad polega na tym, za kazdym razem wykonywane jest $_SESSION['DATA']['isValid'] = false; nawet jesli warunki if-ow nie sa spelnione, czyli takst "tekst probny" z wewnetrznego if-a sie nie ukarze a wartosc zmiennej sesyjnej sie zmienia. Problemu nie jedynie dla sytuacji, w ktorej podana jest maksylana liczba sesji (tu 3) czyli np: domena.pl/strona/ustawienia/dostep/haslo/. Przez caly dzisiejszy dzien sprawdzalem to na dziesiatki sposobow, rozne rodzje zapisu, rozne sposoby sprawdzania czy zostal wygenerowany kod dla wprowadzonej podsekcji, wkoncu czepilem sie typow zmiennych ale naet jak wartosci flase/true usatwie na stringi jest tak samo:/ Wydaje sie ze to moj jakis glupi blad, ale nie moge sobie z nim poradzic, POMOCY!!! zadnych pomyswlo?? :/ zastanawiam sie czy moe miec to zwiazek z typem zmiennych ale chyba nie - prosze raz jeszcze o jakies wskazowki |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
- pisałem już Tobie o tym ![]() - wyświetlało false, wystarczy, że isValid nie jest true, a nie widzę, żebyś gdzieś ustawiał true - domyślnie zawsze będzie false. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 101 Pomógł: 7 Dołączył: 16.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
- pisałem już Tobie o tym ![]() - wyświetlało false, wystarczy, że isValid nie jest true, a nie widzę, żebyś gdzieś ustawiał true - domyślnie zawsze będzie false. Nie no mam domyslne ustawienie zmiennej sesyjnej - na samym poczatku:
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 7.07.2025 - 01:55 |