|
Stránka 1 z 1
|
[ Příspěvků: 6 ] |
|
Autor |
Zpráva |
Zbynas
|
Předmět příspěvku: mysql vyhledávání bez ohledu na diakritiku Napsal: 4. 1. 2021 17:09 |
|
 |
Junior |
 |
|
Zdravím, mám následující mysql dotaz, který ovšem nefunguje korektně. Umí to najít "škoda", když je v DB "ŠKODA", umí to najít "pojis", tam kde v DB je "pojišťovna", ale už ne "pojist". Pravděpodobně to umí ignorovat jen jedno písmeno s diakritikou. Kde je problém? Děkuji moc předem! Kód: $result1 = mysqli_query($pripojeni,"select * from klienti WHERE firma REGEXP '" . strtr(quotemeta($search), array( "c" => "[cčCČ]", "C" => "[cčCČ]", "č" => "[cčCČ]", "Č" => "[cčCČ]", "d" => "[dďDĎ]", "ď" => "[dďDĎ]", "D" => "[dďDĎ]", "Ď" => "[dďDĎ]", "r" => "[rřRŘ]", "R" => "[rřRŘ]", "ř" => "[rřRŘ]", "Ř" => "[rřRŘ]", "s" => "[sšSŠ]", "š" => "[sšSŠ]", "S" => "[sšSŠ]", "Š" => "[sšSŠ]", "z" => "[zžZŽ]", "Z" => "[zžZŽ]", "ž" => "[zžZŽ]", "Ž" => "[zžZŽ]", "t" => "[tťTŤ]", "ť" => "[tťTŤ]", "T" => "[tťTŤ]", "Ť" => "[tťTŤ]" )) . "'"); PS kodování je utf8_general_ci -- 4. 1. 2021 17:40 --Tak jsem zjistil, že když pokud není vyhledávané písmeno v řetězci na prvním místě, je potřeba napsat dvakrát ... škoda > ŠKODA vseobecná > [nevyhledá nic] vsseobecná > Všeobecná pojistovna > [nevyhledá nic] pojisstovna > [nevyhledá nic] pojissttovna > pojišťovna Nechápu ...
_________________ NVidia GTX 1060 6GB, Intel Core i7-2600K @ 3,4 GHz, 16 GB DDR 3 Download 100 Mbps, Upload 100 Mbps, ping 8 VINOTÉKA U FREJKA FREJK.CZ, FREJK.SK, FREJK.COM
|
|
Nahoru |
|
 |
Just_jo
|
Předmět příspěvku: Re: mysql vyhledávání bez ohledu na diakritiku Napsal: 4. 1. 2021 18:57 |
|
 |
Junior |
 |
|
Když ono to v MySQL není zrovna utf8 - novější verze má utf8mb4_ - tu je potřeba používat.
|
|
Nahoru |
|
 |
Zbynas
|
Předmět příspěvku: Re: mysql vyhledávání bez ohledu na diakritiku Napsal: 6. 1. 2021 15:04 |
|
 |
Junior |
 |
|
Děkuji, ale to ničemu nepomohlo ..
_________________ NVidia GTX 1060 6GB, Intel Core i7-2600K @ 3,4 GHz, 16 GB DDR 3 Download 100 Mbps, Upload 100 Mbps, ping 8 VINOTÉKA U FREJKA FREJK.CZ, FREJK.SK, FREJK.COM
|
|
Nahoru |
|
 |
Just_jo
|
Předmět příspěvku: Re: mysql vyhledávání bez ohledu na diakritiku Napsal: 6. 1. 2021 17:18 |
|
 |
Junior |
 |
|
Cca před 6 lety byl dotaz na https://stackoverflow.com/questions/260 ... ch-symbols kde bylo navrženo, aby veškeré záznamy byly ukládány pomocí base64 - bohužel toto řešení má problém s velkými/malými písmeny. Jinak by to mělo fungovat normálně - předpokládám, že máš správně nastavené kódování jak stránky tak spojení jako utf8 namísto bývalého CP ( win1250 )
|
|
Nahoru |
|
 |
Zbynas
|
Předmět příspěvku: Re: mysql vyhledávání bez ohledu na diakritiku Napsal: 14. 1. 2021 12:25 |
|
 |
Junior |
 |
|
Kódování všeho i stránky je v UTF8.
Existuje tedy nějaké řešení, jak v DB vyhledávat bez ohledu na malá / velká písmena a zároveň bez ohledu na diakritiku?
_________________ NVidia GTX 1060 6GB, Intel Core i7-2600K @ 3,4 GHz, 16 GB DDR 3 Download 100 Mbps, Upload 100 Mbps, ping 8 VINOTÉKA U FREJKA FREJK.CZ, FREJK.SK, FREJK.COM
|
|
Nahoru |
|
 |
Just_jo
|
Předmět příspěvku: Re: mysql vyhledávání bez ohledu na diakritiku Napsal: 14. 1. 2021 21:57 |
|
 |
Junior |
 |
|
|
Nahoru |
|
 |
|
Stránka 1 z 1
|
[ Příspěvků: 6 ] |
|
Kdo je online |
Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků |
|
Nemůžete zakládat nová témata v tomto fóru Nemůžete odpovídat v tomto fóru Nemůžete upravovat své příspěvky v tomto fóru Nemůžete mazat své příspěvky v tomto fóru Nemůžete přikládat soubory v tomto fóru
|
| |