| | |
| Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
Autor | Správa |
---|
Registrovaný: 30.06.07 Prihlásený: 26.11.19 Príspevky: 69 Témy: 40 | Napísal quark: 01.04.2010 0:50 | |
|
Neviem cim to presne je ale mam v aplikacii routing kde je SERVER/CONTROLLER/ACTION/PARAM1/VALUE1/PARAM2/VALUE2... Teraz vsetky PARAM a VALUE davam do globalnej premennej GET a zaroven na ne aplikujem funkciu urldecode. Potom pri pouziti Zend_Db mam nasledovny dotaz
Kód: $select = $database->select() ->from('users', array('ID','Name')) ->where('Name REGEXP ?', $regex);
Kde $regex je '^($letter)'; a $letter je pismeno abecedy co je v podstate hodnota parametra PARAM1 - teda je to VALUE1.
Vyzera ze vsetko ide v poriadku ale len na niektore pismena v abecede. Ked mam bezne pismene bez diakrity je vsetko ok ale su niektore s diakritikou napr. Á, Ž alebo Ň tak to nejde. Nenájde nič. Samozrejme v DB v tabulke users mam uzivatelov s ich menom zacinajucim na Á, Ž aj Ň. Nie sú to realne mena ale na skusku.
Tak napr. localhost/index/index/letter/M vrati 3 vysledky ale localhost/index/index/letter/Ň nevrati nic aj ked existuje jedno take meno v tej tabulke.
Viete mi poradit ze kde moze byt chyba? V routingu, pri urldecode, v mysql dotaze?
Skusal som aj priamo v PHPMYADMIN a ani tam mi to neslo s tymi isty znakmi. Asi to ma problem zo znakovou sadou.
Databazu mam v collate UTF8_GENERAL_CI. Je potrebne prekonvertovat $letter na UTF-8? Ak ano tak ako? A je potrebne aj zadat za SQL dotaz aj COLLATE "UTF8_GENERAL_CI" - tiez by som v tom pripade potreboval poradit ze ako na to
Dakujem
|
|
Registrovaný: 01.04.10 Prihlásený: 08.10.11 Príspevky: 339 Témy: 0 | Napísal Forty-: 01.04.2010 15:48 | |
|
Nejak mam problem ti porozumiet.
Na jednej strane tvrdis, ze mas v DB uz vlozene data s diakritikou.
Na druhej strane tvrdis, ze v PHPMyAdmin data s diakritikou nevidis.
Tak ako teda?
Btw je pouzivam utf8_slovak_ci
|
|
Registrovaný: 30.06.07 Prihlásený: 26.11.19 Príspevky: 69 Témy: 40 | Napísal autor témy quark: 01.04.2010 16:12 | |
|
Asi som sa zle vyjadril.
Cez INSERT som vlozil udaje do DB s diakritikou.
Ked dam klasicky SELECT * FROM tak vsetko pekne vypise - vidim to vo vysledku. Ak je ale za prikazom WHERE prikaz REGEXP tak uz to nepracuje - teda nevyhlada tie zaznamy ktore splnaju regularny vyraz a zaroven som ich cez INSERT vlozil. Cize v DB existuje zaznamy kde prvy Name='Žižka' a druhy Name='Zrubec' a ked budem mat regularny vyraz '^(Z)' tak vysledok bude len ten druhy zaznam co je dobre ale ak bude regularny vyraz '^(Ž)' tak ziadny vysledok (0 results).
|
|
Registrovaný: 01.04.10 Prihlásený: 08.10.11 Príspevky: 339 Témy: 0 | Napísal Forty-: 01.04.2010 17:03 | |
|
a ked skusis
Kód: SELECT * FROM tabulka WHERE stlpec like 'Ž%'
tak to ide?
Lebo ja ked som mal podobny problem, tak ja uz som pri nahlade na data (napr. v PhPMyAdmin) nevidel Masloň ale Maslo? (cize uz v tabulke to bolo zle). No a u mna pomohlo utf8_slovak_ci
|
|
Registrovaný: 30.06.07 Prihlásený: 26.11.19 Príspevky: 69 Témy: 40 | Napísal autor témy quark: 01.04.2010 17:16 | |
|
Nie ani takto to nejde.
Ale som sa niekde docital ze REGEXP ma problemy zo znakovymi sadami - neviem ci je to pravda - tak ale ak ano tak moze to byt v tom.
|
|
Registrovaný: 01.04.10 Prihlásený: 08.10.11 Príspevky: 339 Témy: 0 | Napísal Forty-: 01.04.2010 17:17 | |
|
A to co som ti napisal si skusal cez PHP ci priamo ako query cez nejaky DB tool? (phpmyadmin, mysql query browser ... ) ?
|
|
Registrovaný: 30.06.07 Prihlásený: 26.11.19 Príspevky: 69 Témy: 40 | Napísal autor témy quark: 01.04.2010 17:32 | |
|
Cez phpmyadmin.
|
|
Registrovaný: 01.04.10 Prihlásený: 08.10.11 Príspevky: 339 Témy: 0 | Napísal Forty-: 01.04.2010 17:43 | |
|
Tak potom ti asi neviem poradit.
Ak to nie je nejaka dolezita DB, tak si ju proste zalohuj (sprav export), celu ju vydropuj a vytvor znova tabulky s tym, ze tam das ten utf8_slovak_ci a uvidis, ci pomohlo alebo nie
Myslim ze to collate ide aj "za jazdy" ale mne sa to neosvedcilo.
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | Napísal chrono: 02.04.2010 0:39 | |
|
Práva som to skúšal (údaje som vkladal a aj hľadal pomocou phpmyadmin) a funguje to dobre.
Zend_Db si asi nepoužíval cez phpmyadmin takže ak nenapíšeš, čo presne robíš (ako si tam tie údaje vkladal, či sa dobre zobrazujú v phpmyadmin...) tak ti asi nikto neporadí (lebo REGEXP nemá s diakritikou problémy).
|
|
Registrovaný: 30.06.07 Prihlásený: 26.11.19 Príspevky: 69 Témy: 40 | Napísal autor témy quark: 02.04.2010 9:28 | |
|
No nakoniec bol problem v tom ze som si vobec nevsimol este jednu podmienku ktora sa viazala prave na tie zaznamy - teda tie s tymi Ň, Ž Á a pod. Kazdopadne ked som tu podmienku odstranil tak to uz islo uplne v pohode.
Dakujem aj tak za rady - skoda len ze som sa nepozrel poriadne na query
Este raz vdaka
|
|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 Bydlisko: Lehota pod ... | Napísal camo: 02.04.2010 10:37 | |
|
Môžeš tú podmienku trochu opísať, nech z toho aj ja niečo mám, okrem toho, že viem, že to dobre dopadlo?
|
|
| Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| Diakritika v MySQL v Databázy | 1 | 412 | 18.11.2013 0:49 Ďuri | | Delphi a MySQL diakritika v Delphi, Visual Basic | 6 | 913 | 06.07.2010 11:28 Manny | | diakritika v MySQL (zase...) v Databázy | 8 | 733 | 09.04.2010 9:19 max-m | | mySql diakritika v bunke v Databázy | 13 | 1301 | 26.07.2009 15:34 Snacker | | XAMPP, MySQL 4.x a 5.x, konverzia, diakritika v Databázy | 5 | 4518 | 30.11.2006 17:44 mikybb | | Diakritika v Databázy | 11 | 1098 | 30.08.2009 20:30 bmatias | | Diakritika v Databázy | 2 | 749 | 30.03.2009 22:22 22adamko | | diakritika v HTML, XHTML, XML, CSS | 13 | 721 | 01.12.2010 14:18 coldak | | Diakritika v HTML, XHTML, XML, CSS | 13 | 824 | 03.12.2008 14:12 exoomer | | Diakritika v HTML, XHTML, XML, CSS | 1 | 503 | 25.10.2009 20:58 don jebot | | Diakritika v Delphi, Visual Basic | 1 | 763 | 05.05.2009 20:20 programator | | Diakritika v HTML, XHTML, XML, CSS | 6 | 933 | 25.04.2007 16:54 p360t | | diakritika v HTML, XHTML, XML, CSS | 9 | 1121 | 18.08.2010 9:50 locksmith | | Diakritika v Ostatné | 8 | 797 | 22.10.2010 22:10 Rammstein | | Diakritika v Redakčné systémy | 19 | 1468 | 06.05.2007 10:54 p360t | | pokazená diakritika v Ostatné | 2 | 624 | 02.08.2011 10:36 irelevant |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|