Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem PHP vyhledávací skript nerozliší v databázi mezi N a Ň

skript v PHP mi nerozlišuje mezi N a Ň, neví někdo čím by to mohlo být?
Následující skript vytvoří stejný výpis jako ten další:

$query1 = mysql_query("SELECT * FROM slovnik WHERE cyklus = 'konias' && (slovo LIKE 'N%' || slovo LIKE 'n%') ORDER BY slovo ;");		
while($rec = mysql_fetch_array($query1)) {		// postupne je všechny vypíšeme

echo '<div id="cent">
      <span class="text_vetsi"><font color="black">&diams;'.$rec["slovo"].'</font></span> - '.$rec["pojem"].'
      <br>   
      <br>   
      </div><!-- konec cent-->';

} //konec while
$query1 = mysql_query("SELECT * FROM slovnik WHERE cyklus = 'konias' && (slovo LIKE 'Ň%' || slovo LIKE 'ň%') ORDER BY slovo ;");		
while($rec = mysql_fetch_array($query1)) {		// postupne je všechny vypíšeme

echo '<div id="cent">
      <span class="text_vetsi"><font color="black">&diams;'.$rec["slovo"].'</font></span> - '.$rec["pojem"].'
      <br>   
      <br>   
      </div><!-- konec cent-->';

} //konec while
Předmět Autor Datum
pripoj sa k mysql a hod sem vypis prikazu: show variables where variable_name like '%collat%'; pra…
wam_Spider007 18.08.2010 23:41
wam_Spider007
collation_connection utf8_unicode_ci collation_database cp1250_czech_cs collation_server latin1_swed…
Brmboš 19.08.2010 09:31
Brmboš
Nemělo by to kódování být všude stejný?
CoWayger 19.08.2010 09:35
CoWayger
Mně skripty fungují správně i při collation_server latin1_swedish_ci Ostatně tuto položku mohu změ…
hynajs 19.08.2010 10:04
hynajs
No ještě dodám, že ostatní písmenka běží bez potíží. Tedy v pohodě rozlišují mezi S a Š nebo mezi R…
Brmboš 19.08.2010 10:54
Brmboš
Já při spojení do databáze volám mysql_query("SET CHARACTER SET utf8"); , při zakládáni databáze p… poslední
CoWayger 19.08.2010 11:04
CoWayger

Mně skripty fungují správně i při

collation_server latin1_swedish_ci

Ostatně tuto položku mohu změnit jedině na své instalaci MySQL.

Viz např. http://cs.wikiversity.org/wiki/MySQL-k%C3%B3dov%C3 %A1n%C3%AD

kapitolka Kódování a řazení na úrovni serveru.

odkud kopíruji :

Otázkou ale zůstává, jaký má smysl toto nastavení na úrovni serveru měnit. Výhoda to má v tom, že pokud zpracováváme zpravidla databáze v českém prostředí, není potřeba už nic nikde nastavovat a ono to už dál "funguje samo". Nevýhoda tohoto přístupu je v tom, že pokud např. importujeme nějakou databázi, která předpokládá implicitní nastavení serveru latin1 a tudíž žádné vlastní kódování a řazení nedefinuje, zaděláme si na problémy. Proto preferuji ponechat na serveru implicitní kódování latin1 a tím nutit tvůrce databází, aby použité kódování specifikovali na úrovni celé databáze, případně na nižších úrovních (tabulky, sloupce).

Zpět do poradny Odpovědět na původní otázku Nahoru