Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Krzaki po serializacji danych i zapisie do bazy, php5, mysql5
Vengeance
post
Post #1





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Cześć, dawno mnie tu nie było... ale kolejny problem sprowadza mnie w progi forum (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)


Przenosiłem swój najnowszy projekt (dziejesie.pl) z localhosta na serwer (dreamhost). Poza problemem z kodowaniem znaków w utf, który już rozwiązałem - pojawił się też inny....

Podczas logowania użytkownika, zapisuje pewne dane do sesji. Wykorzystuje przy tym także własny session handler, dzięki czemu trzymam wszystko w bazie a nie w plikach.

Problem jest taki, że dane sesyjne po serializacji się "krzaczą". Pojawiają się dziwne znaki, wypadają ważne elementy składni przez co potem dane są niemożliwe do odczytania i przy unserialize() otrzymuje wartość NULL.

Dokładny debug wykazał, że podczas zapytania UPDATE które aktualizuje dane w sesji wszystko jeszcze jest OK. Jednak po zapytaniu w bazie pojawiają się już niepoprawne dane... i odczyt ich kończy się porażką (wartość NULL zamiast obiektu User, w efekcie nie działa mi logowanie).


Jakąś rolę odgrywają tu chyba także same sesje... dlaczego? W innym miejscu aplikacji zapisuje do bazy zserializowany obiekt Position określający pozycje miejsca na mapie Google - i tu wszystko działa jak należy :/

A tak wygląda fragment sesji w bazie
auth|O?:"User":1:{s?:"*

A wiadomo, że powinien wyglądać mniej więcej tak:
auth|O:4:"User":1:{s:3:"*

zupełnie wycina niektore dwukropki i cyferki :/

Ktoś się z tym spotkał?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 16:05