Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: polskie litery
Forum PHP.pl > Forum > Bazy danych > MySQL
Szczav
Mój problem jest spowodowany zniekształcaniem polskich literek przez MySQLa. W skrypcie muszę zamienić wartość jednego pola tablicy MySQL. Skrypt działa poza jednym przypadkiem, gdy w polu znajduje się jakiś ciąg zawierający polskie znaki (ł, ś, ą itd). Baza nie chce uznać, że ciąg znajdujący się w polu jest równy podawanemu przeze mnie (a jest) i aktualizować pola. Próbowałem znaleźć jakąś funkcję mysqla albo php, która sprawi, że ciągi będą poprawnie interpretowane przez bazę, ale nic nie znalazłem. Mógłbym zmienić sposób działania skryptu tak żeby nie musiał odczytywać polskich znaków, ale wymagało by to poważniejszych zmian w strukturze całego projektu. Mam nadzieję, że ktoś wie jak rozwiązać ten problem.

update tablica_name set pole_name='nowa_wartość_do_pola' where pole1_name='stara_wartość_pola';
kurtz
Cytat
gdy w polu znajduje się jakiś ciąg zawierający polskie znaki (ł, ś, ą itd). Baza nie chce uznać, że ciąg znajdujący się w polu jest równy podawanemu przeze mnie (a jest) i aktualizować pola
popraw skrypt. u mnie dziala bez klopotu wyszukiwanie z polskimi literami.

mozliwe twoje bledy
1) baza chodzi w dziwnym kodowaniu (marna szansa bo wybierasz i wyglada ok)
2) wynikowy string jest inaczej zakodowany niz jest w bazie (np UTF albo win-1250)
3) w bazie nie masz polskich liter tylko ich odpoweidni zakodowane htmlspecialchars()
Szczav
Chyba masz rację, inny podobny skrypt chodzi mi bez problemów... Musze to sparwdzić.
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.