NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
Mezinárodní den IT společnosti je tady! Pouze nyní můžeš získat 90 % extra kreditů při nákupu od 1199 kreditů s promo kódem AJTACI90. Tak neváhej!

Diskuze: Jak obrátit cyklus při výčtu z DB?

V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Jak se ti líbí článek?
Před uložením hodnocení, popiš prosím autorovi, co je špatněZnaků 0 z 50-500
Jak se ti kurz líbí?
Tvé hodnocení kurzuZnaků 0 z 50-500
Aktivity
Avatar
Ondřej Pech
Člen
Avatar
Ondřej Pech:3.1.2017 10:23

Řeším situaci (typicky chat):
Kde potřebuji z DB vytáhnout posledních (nejnovějších) 5 záznamů z DB(10,9,8,7,6) ale vypsat je potřebuji obráceně, ztn. ten nejnovější dole. (6,7,8,9,10)
nějaký nápad? Stačilo by nějak obrátit cyklus, který vypisuje záznamy ale nevím jak.

 
Odpovědět
3.1.2017 10:23
Avatar
Michal
Člen
Avatar
Odpovídá na Ondřej Pech
Michal:3.1.2017 10:29

Jednodušší než obrátit cyklus je obrátit pole, ve kterém máš záznamy z databáze. Slouží pro to funkce array_reverse():

$dbResult = mysqli_query(...);
$dbResult = array_reverse($dbResult);

// Tady bude samotný cyklus.
 
Nahoru Odpovědět
+1
3.1.2017 10:29
Avatar
Odpovídá na Ondřej Pech
Neaktivní uživatel:3.1.2017 10:59

A proč si to nenecháš poslat už od databáze seřazené tak jak chceš?

SELECT * FROM messages
WHERE MessageID in (
     SELECT MessageID FROM Orders
     ORDER BY MessageID DESC LIMIT 5)
ORDER BY MessageID ASC

A pak jen cyklem vypiš.

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
+1
3.1.2017 10:59
Neaktivní uživatelský účet
Avatar
Ondřej Pech
Člen
Avatar
Ondřej Pech:3.1.2017 11:10

Obě řešení zní zajímavě, díky :)

 
Nahoru Odpovědět
3.1.2017 11:10
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.