![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 675 Pomógł: 15 Dołączył: 7.11.2004 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
WITAM!
Napisałem (a raczej odtworzyłem z "php. Czarna księga") implementację sesji opartą na bazie danych. Kod obsługi sesji wygląda następująco:
Lecz gdy dołączę ten plik do innego i uruchomię sesją:
dostaję błąd systemowy: Pamięć nie może być read... Gdzie może być błąd. Kod SQL tworzący bd:
-------------------- Kto pyta, nie błądzi...
Kto zbłądził, ten pyta... |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 68 Pomógł: 0 Dołączył: 13.05.2003 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
W lini 106 mysql_query() oczekuje parametru - autor postu już wie o tym. Nie w tym jednak tkwi przyczyna...
--edit-- Linia 119 zamiast session_table() jest session_table - problem chyba rozwiązany... następnym razem polecam włączyć w apache: error_reporting = E_ALL & E_NOTICE -------- ps. kuzyn czytaj PW Pozdrawiam Ten post edytował pirat 11.05.2006, 22:16:26 -------------------- Zdrowy rozsądek to rzecz, której każdy potrzebuje, mało, kto posiada, a nikt nie wie, że mu brakuje.
Czasami myślę, iż Bóg tworząc człowieka przecenił nieco swoje zdolności. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 675 Pomógł: 15 Dołączył: 7.11.2004 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
HEJ!!!
Zapewniam, że Apache ma włączone raportowanie błędów (co do raportowania: nie w Apachu owa klauzula, tylko w pliku php.ini, po drugie nie: Cytat error_reporting = E_ALL & E_NOTICE ponieważ E_ALL ma w sobie wszytskie błedy (poza E_STRICT), więc wystarczy Kod error_reporting = E_ALL ewentualnie Kod error_reporting = E_ALL & E_STRICT Poniżej jest poprawiony kod, bez zbytniego zaciemniania (bez wpisów do pliku dziennika). Ale problem leży chyba po stronie kochanego Windowsa (lub Apacha), a nie po stronie php - komunikat błędu (błąd aplikacji Apache: Pamięć spod "0x..." odwołuje się do pamięci pod adresem "0x...". Pamięć nie może być "read"). Po dojściu do funkcji session_write, php nie sprawdza jej i pozostałej reszty, tylko system daje powyższy błąd! Stąd pojawiły się szewskie błedy w tamtych funkcjach - pomimo raportowania wszystkich błędów!. Chyba czas na małą reinstalacje ![]()
Dodatkowo: Cieszę się, że ten kod podobno momus działa. Qzyn czasem czyta PW, ale czsem nie ma włączonego neta ![]() Ten post edytował JaRoPHP 12.05.2006, 13:32:11 -------------------- Kto pyta, nie błądzi...
Kto zbłądził, ten pyta... |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 698 Pomógł: 3 Dołączył: 28.03.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Jaro pomyliłeś operatory... Jeżeli już coś, to
Kod error_reporting = E_ALL | E_STRICT Zauważ, że koniunkcja tych stałych zawsze da w wyniku 0... -------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 675 Pomógł: 15 Dołączył: 7.11.2004 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Oczywiście musi być alternatywa (or, czy też "|").
Z mojej strony sorki i dzięki Ludvik, że kontrolujesz. -------------------- Kto pyta, nie błądzi...
Kto zbłądził, ten pyta... |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 12.06.2025 - 15:18 |