![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 1 Dołączył: 23.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Mam taki oto problem.
Jeżeli $nick zawiera polskie znaki np. ó, ż w nazwie nicka przesłanego z formularza to otrzymuje komunikat o błędzie. Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\Program Files\WebServ\httpd-users\NOWA_WERSJA\login.php on line 42 Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Program Files\WebServ\httpd-users\NOWA_WERSJA\login.php on line 44 A to fragment kodu przesyłającego zapytanie.
Natomiast jeśli w $nick nie ma polskich znaków to zapytanie wykonuj się normalnie i nie mam żadnego komunikatu o błędzie. Kodowanie w bazie danych mam na utf8_unicode_ci, a nagłówki ustawione na stronie wyglądają tak:
Nie wiem dlaczego ten błąd mi się pojawia tylko wtedy gdy podaje w formularzu jako nick słowo zawierające polskie litery. To samo dzieje sie w innych formularzach jeśli podam w nich polskie znaki. :/ Czy to dlatego że jest kodowanie utf8. Może mam źle ustawione nagłówki xhtml. Tylko jak mam je ustawić aby to ruszyło. A może to wina bazy danych. Używam localhosta webserv2. Gdy wykonuje zapytanie przez phpmyadmin to działa normalnie.
Proszę, może ktoś mi doradzi co mam zrobić? Ten post edytował Rude Dude 14.07.2008, 21:46:59 |
|
|
![]() |
![]() ![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 1 Dołączył: 23.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki. Faktycznie teraz nie wywala błędu. W takim razie coś źle jest skonfigurowana baza danych na localhoscie.
Wrzuciłem pliki na serwer hostingowy i tam nie wyskakiwał błąd. Tylko na localu on występuje. Dzięki za pomoc! === EDIT: Rozszyfrowałem to! Teraz wszystko działa, łącznie z wyszukiwaniem w bazie tekstu z polskimi znakami. Oto konfiguracja jaką mam teraz ustawioną. ### Kodowanie bazy: ustawienia w phpmyadmin: + System kodowania znaków dla MySQL: UTF-8 Unicode (utf8) + System porównań dla połączenia MySQL: utf8_unicode_ci + tworzac nową baze ustawic kodowanie na utf8_unicode_ci + dodając tabele do bazy należy dodać na końcu zapytanie:
(tutaj przykład zapytania)
+ UWAGA: Nie wolno przez phpmyadmin edytowac zawartości pól z polskimi znakami, ponieważ przechowywane są jako dziwne krzaczki i jak sie je zmieni przez phpmyadmin na polskie znaki to na stronie www wyświetlą się jako krzaczki (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ten post edytował Rude Dude 18.07.2008, 14:52:00 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 17:49 |