Zadejte hledaný výraz...

PHP & MySQL, výpis dle abecedy (písmena C a CH)

David Musil
verified
rating uzivatele
(69 hodnocení)
22. 10. 2014 18:00:41
Zdravím,
na webu klienta mu vypisuji z DB značky automobilů do SELECT/OPTION podle české abecedy vzestupně, čili A - Z.
Nyní přišel klient s požadavkem, zda by se značky Chrysler a Chevrolet mohly ukazovat abecedně pod C a ne pod CH (tak jsou teď).
Možná je to triviální, ale nějak nevím, jak bych měl SQL dotaz napsat, aby nebyl místo jednoho řádku na dvacet.
Leda dát do pole znaky anglické abecedy, postupně pole projíždět a z DB postupně vypisovat opět podle abecedy od konkrétního písmene (které získám v cyklu) přes LIKE.
Opravdu specifické přání...
Víte někdo, jak na to?
22. 10. 2014 18:00:41
https://webtrh.cz/diskuse/php-mysql-vypis-dle-abecedy-pismena-c-a-ch#reply1063371
Denis Ulmann
verified
rating uzivatele
(9 hodnocení)
22. 10. 2014 18:32:03
Rychle jsem to přeletěl očima, protože jsem se ztratil už na začátku (moje specialita :D), každopádně nemůžeš obyčejným sql dotazem všechno vytáhnout, projet while a uložit vše co potřebuješ do pomocné proměnné array ve které si všechno seřadíš jak chceš funkcemi (nebo si pomocné proměnné uděláš třeba 2) apod.. a potom to jen projedeš foreachem? Protože je to mnohem lepší co se HW týče, než vymýšlet kloudný sql dotaz, který se bude volat při hodně navštěvovaných stránkách skoro každou sekundu.
22. 10. 2014 18:32:03
https://webtrh.cz/diskuse/php-mysql-vypis-dle-abecedy-pismena-c-a-ch#reply1063370
David Musil
verified
rating uzivatele
(69 hodnocení)
22. 10. 2014 18:39:27
Tak to mysleno nebylo, bohuzel jsi me nepochopil. Myslel jsem naplnit pole znaky z abecedy.
$array = array('a', 'b', 'c',...'z'); (znaky anglicke abecedy, nebude zde pismeno "ch")
- toto naplnene pole projet cyklem a vzdy vypsat znacky zacinajici na dane pismeno pomoci LIKE. Tim se ty znacky zacinajici na "ch" vypisou vlastne pod C.
Nekdo lepsi napad?
22. 10. 2014 18:39:27
https://webtrh.cz/diskuse/php-mysql-vypis-dle-abecedy-pismena-c-a-ch#reply1063369
Vladimír Smitka
verified
rating uzivatele
(4 hodnocení)
22. 10. 2014 18:43:36
Nastavit sloupci collation na jiny nez cesky, nebo primo v dotazu:
22. 10. 2014 18:43:36
https://webtrh.cz/diskuse/php-mysql-vypis-dle-abecedy-pismena-c-a-ch#reply1063368
David Musil
verified
rating uzivatele
(69 hodnocení)
22. 10. 2014 19:11:20
Díky moc, Vladimíre. To bylo přesně to easy řešení, co jsem měl na mysli.
22. 10. 2014 19:11:20
https://webtrh.cz/diskuse/php-mysql-vypis-dle-abecedy-pismena-c-a-ch#reply1063367
Pavel Horáček
verified
rating uzivatele
(19 hodnocení)
22. 10. 2014 19:58:03
Napsal smitka;1134345
Nastavit sloupci collation na jiny nez cesky, nebo primo v dotazu:
Super, nedavno jsem resil podobny "problem" a resil jsem to dvema sql dotazy ... rad pouzivam selsky rozum, polozek bylo malo tak proc ne.
Take tedy dekuji :-)
22. 10. 2014 19:58:03
https://webtrh.cz/diskuse/php-mysql-vypis-dle-abecedy-pismena-c-a-ch#reply1063366
Creator13
verified
rating uzivatele
(49 hodnocení)
22. 10. 2014 20:52:41
Napsal musil.david;1134343
Tak to mysleno nebylo, bohuzel jsi me nepochopil. Myslel jsem naplnit pole znaky z abecedy.
$array = array('a', 'b', 'c',...'z'); (znaky anglicke abecedy, nebude zde pismeno "ch")
- toto naplnene pole projet cyklem a vzdy vypsat znacky zacinajici na dane pismeno pomoci LIKE. Tim se ty znacky zacinajici na "ch" vypisou vlastne pod C.
Nekdo lepsi napad?
Pri tvojom rieseni stacilo pridat do $array aj 'ch' ...v pripade, ze by si prechadzal cez znak 'c', tak by si tam dal len podmienku, ci je druhe pismeno 'h' a ak je, tak by si ho nevypisal....
ale riesenie od smitky je jednoduche...
22. 10. 2014 20:52:41
https://webtrh.cz/diskuse/php-mysql-vypis-dle-abecedy-pismena-c-a-ch#reply1063365
David Musil
verified
rating uzivatele
(69 hodnocení)
22. 10. 2014 23:02:16
Napsal Creator13;1134386
Pri tvojom rieseni stacilo pridat do $array aj 'ch' ...v pripade, ze by si prechadzal cez znak 'c', tak by si tam dal len podmienku, ci je druhe pismeno 'h' a ak je, tak by si ho nevypisal....
ale riesenie od smitky je jednoduche...
To si myslim, ze neni dobry napad... Na co bych do pole pridaval i pismeno "ch"? Kdyz tam "ch" nebude, tak nemusim davat podminku. Kdyz tam "ch" dam, tak musim podminky pridat. Cili na co si takto pridelavat praci?
Kdyz by v poli bylo jen pismenko "c", vypsalo by mi to retezce zacinajici i na "ch" a tim padem by tedy bylo splneno klientovo prani. Takze si myslim, ze toto je asi zbytecna uvaha :))
22. 10. 2014 23:02:16
https://webtrh.cz/diskuse/php-mysql-vypis-dle-abecedy-pismena-c-a-ch#reply1063364
Vendula
verified
rating uzivatele
(3 hodnocení)
23. 10. 2014 09:39:01
smitka: taky Vám děkuju za toto řešení, naopak, já jsem potřebovala vypisovat dle czech, protože takhle mi to řadilo jména, jak bylo zmíněno CH pod C a taky pak při použití diakritiky, např. S se mi motalo s Š apod.
Takže Vaše řešení mi to vyřešilo nyní již dle czech :-)
23. 10. 2014 09:39:01
https://webtrh.cz/diskuse/php-mysql-vypis-dle-abecedy-pismena-c-a-ch#reply1063363
Pro odpověď se přihlašte.
Přihlásit