Autor | Zpráva | ||
---|---|---|---|
Falcon Profil * |
#1 · Zasláno: 8. 1. 2008, 18:46:33
Zdravim.
select * from produkty WHERE (LOWER(nazev COLLATE cp1250_czech_cs) LIKE '%".strtolower($hledamtext)."%') AND sklad >= '1' order by nazev ASC" Pokud mám v $hledamtext text bez diakritiky, je vše v pořádku, ale pokud je s diakritikou, háže to error : Illegal mix of collations (cp1250_czech_cs,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'like V configu u připojování k DB mam v mysql_query("SET character_set_client=utf8"); mysql_query("SET character_set_connection=utf8"); mysql_query("SET character_set_results=utf8"); I pokud to prohodim za cp1250, stejně to nefunguje. |
||
Kajman_ Profil * |
#2 · Zasláno: 8. 1. 2008, 19:31:35
Pokud máte stránky v utf8, tak používejte
http://cz2.php.net/manual/cs/function.mb-strtolower.php |
||
Falcon Profil * |
#3 · Zasláno: 8. 1. 2008, 19:58:34
Fatal error: Call to undefined function mb_strtolower() in c:\AppServ\www\spidla\new\products.php on line 67
Nějak mi to tu funkci nechce vzít. |
||
Alphard Profil |
#4 · Zasláno: 8. 1. 2008, 20:05:31
odkomentuj v php.ini řádek s extension=php_mbstring.dll
|
||
Falcon Profil * |
#5 · Zasláno: 8. 1. 2008, 20:15:07
odkomentuj v php.ini řádek s extension=php_mbstring.dll
Super.To sice pomohlo.Žádný error, ale zase mi to nic nenajde, pokud vyhledávám s diakritikou :) $query = mysql_query("select * from produkty WHERE ( LOWER(nazev) LIKE '%".mb_strtolower($hledamtext)."%' OR LOWER(search) LIKE '%".mb_strtolower($hledamtext)."%' OR LOWER(popis) LIKE '%".mb_strtolower($hledamtext)."%' ) AND sklad >= '1' order by nazev ASC") or DIE(mysql_error()); Např. pokud vyhledávám slovo "červené" a v DB ve sloupci nazev mám "auto je červené", tak mi to nic nenajde. |
||
Kajman_ Profil * |
#6 · Zasláno: 8. 1. 2008, 20:24:10
A když zapomenete na všechny ty lower a necháte jen na těch sloupečcích porovnání končící na _ci, tak to také nejde? A máte to červené auto skladem?
|
||
Falcon Profil * |
#7 · Zasláno: 8. 1. 2008, 20:33:48
A když zapomenete na všechny ty lower
Tak teď to funguje skvěle.Bylo to těma lower.Moc děkuji. |
||
Časová prodleva: 16 let
|
0