Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][SQL][MYSQL]Kodowanie: baza/tabela: latin2, serwer: utf8
shreeve
post
Post #1





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 24.04.2007
Skąd: Poznań

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


Witam,
być może ktoś z Was miał podobny problem
Kodowanie serwera: utf8_unicode_ci
Kodowanie skryptu php: utf8
Kodowanie bazy, tabeli i kolumny: latin2_general_ci.
Problem mój polega na tym przy próbie wyszukiwania wyrazu z polskimi znaczkami, np 'ż'. Wyszukiwanie jest "case insensitive", ale nie radzi sobie z polskimi znaczkami, więc wyszukuje tylko takie jakie zostały wpisane.
Próbowałem robić konwersję argumentu wyszukiwanego używając
  1. <?php
  2. $query = iconv("UTF-8", "ISO-8859-2", $query);
  3. ?>

oraz
  1. <?php
  2. $query = mb_convert_encoding($query, "ISO-8859-2", mb_detect_encoding($query));
  3. ?>

ale nic nie dało pożądanych rezultatów.
Próbowałem także używać przed wyszukiwaniem w bazie:
  1. <?php
  2. mysql_query("SET NAMES 'latin2'");
  3. mysql_query("SET CHARACTER SET 'latin2_general_ci'");
  4. ?>

Czy nie powinienem tego zrealizować w transakcji?
Z góry dziękuję za ewentualne możliwe rozwiązania a ja wracam dalej do eksperymentowania.


Grzebię w tym i nic nowego nie wykombinowałem. Może inaczej.
W bazie mam zapisane dane kodowane w utf-8, ale porównywać muszę wyrazy z polskimi znakami diakrytycznymi, więc na chwilę obecną, nie potrafi odróżnić, czy to jest mała czy duża litera (w przypadku znaków diakrytycznych).

Ten post edytował shreeve 23.09.2008, 10:50:59
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 21.08.2025 - 17:35