Zadejte hledaný výraz...

Mám v poli ID záznamů, které potřebuju vyselectovat z databáze

Kloban
verified
rating uzivatele
13. 10. 2014 18:50:53
Ahoj,
mám PHP pole, ve kterém mám uložena ID záznamů, která mě zajímají.
Záznamy s těmito ID potřebuju z databáze vyselectovat a zobrazit. V poli může být jeden až max 1000 záznamů.
Jak nejelegantněji toto v PHP napsat?
Výsledný select by mohl vypadat takto: SELECT * FROM table WHERE id=1 OR id=2 OR ...
A není problém ho vytvořit přes foreach.
Nemám tedy problém s tím to nějak udělat, ale zajímá mě, jestli je to elegantní a efektivní řešení v případě, že těch "OR" tam bude třeba 150.
Dík Dan
13. 10. 2014 18:50:53
https://webtrh.cz/diskuse/mam-v-poli-id-zaznamu-ktere-potrebuju-vyselectovat-z-databaze#reply1061264
Roman
verified
rating uzivatele
(11 hodnocení)
13. 10. 2014 18:51:59
SELECT * FROM table WHERE id IN (1,2,5)...
13. 10. 2014 18:51:59
https://webtrh.cz/diskuse/mam-v-poli-id-zaznamu-ktere-potrebuju-vyselectovat-z-databaze#reply1061263
P-ierre
verified
rating uzivatele
(43 hodnocení)
13. 10. 2014 20:13:31
Ještě doplním, že to nemusíš vypisovat složitě přes foreach, ale existuje funkce implode (spojí pole do stringu, opak explode).
13. 10. 2014 20:13:31
https://webtrh.cz/diskuse/mam-v-poli-id-zaznamu-ktere-potrebuju-vyselectovat-z-databaze#reply1061262
Jan Matoušek
verified
rating uzivatele
(12 hodnocení)
14. 10. 2014 19:00:01
Napsal P-ierre;1131812
Ještě doplním, že to nemusíš vypisovat složitě přes foreach, ale existuje funkce implode (spojí pole do stringu, opak explode).
A já ještě doplním, že při používání mysql_query bych byl hodně opatrnej co tam posílám. :-) Tohle je hodně náchylná věc na SQL injection. Lepší je použít nějakou knihovnu, co se ti o to postará sama. Např.: NotORM
14. 10. 2014 19:00:01
https://webtrh.cz/diskuse/mam-v-poli-id-zaznamu-ktere-potrebuju-vyselectovat-z-databaze#reply1061261
Pro odpověď se přihlašte.
Přihlásit