[php] dodawanie z tabeli w odwrotnej kolejności


(stanek.94) #1

Witam. Mam taki kod wypisujący z bazy

echo('dodaj newsa');$zapytanie = "SELECT * FROM `tabela`";$idzapytania = mysql_query($zapytanie);';$wiersz = mysql_fetch_array($idzapytania)) {''.$wiersz[1].' przez '.$wiersz[3].''.$wiersz[2].'Skomentuj';

I chciałbym żeby wypisywał odwrotnie, tzn od tyłu, pierwszy wiersz na dole a ostatni na górze. da się jakoś to zrobić?

(B.Andy) #2

Zależy według czego sortujesz, np.

SELECT * FROM tabela ORDER BY id ASC

ASC sortuje rosnąco, DESC sortuje malejąco.


(hoobert) #3

możesz również zapisać wyniki zapytania do tablicy, a potem po prostu ją odwrócić, używając np. funkcji array_reverse.

$arr = array();

while($row = mysql_fetch_assoc($sql))

{

	$arr[] = $row;

}


$arr = array_reverse($arr);

Jednak sposób, który zaproponował B.Andy wydaje się rozsądniejszy i wydajniejszy (przynajmniej przy większej ilości danych).

PS. Polecam zapoznanie się z biblioteką PDO - bardzo fajna biblioteka do obsługi baz danych (nie tylko mysql) przez PHP.


(stanek.94) #4

dzięki bardzo :slight_smile: