buyrun çözümünüz
$sorgu = mysql_query("SELECT * FROM dort");
$sayi = mysql_num_rows($sorgu);
$sonuc = $sayi - 5;
$sor = mysql_query("select * from dort order by id asc limit $sonuc,$sayi");olarak listeleyebilirsiniz. 5 yerine kaç veri listelenmesini isterseniz yazabilirsiniz
Not : şuanda kendim oluşturdum hata verme ihtimali yoktur bende sorunsuz çalışmakta
Çok teşekkür ederim hocam, sizin kodunuzu kullanarak olayı çözdüm
1. yöntem :
Çektiğin verileri döngü içerisinde dizi değişkene alıp ksort ile yeniden sırala
2. yöntem:
iç içe sorgu kullan
SELECT * FROM tablo WHERE id IN(SELECT id FROM tablo ORDER BY id DESC LIMIT 10) ORDER BY id ASC
edit : ksort değil asort
İlginize teşekkürler, diğer kod scriptime daha uygun geldi onu kullandım.
$rows = 10;
mysql_query("SELECT * FROM `table` WHERE `id` > (SELECT MAX(`id`) FROM `table`) - $rows ORDER BY `id` asc LIMIT $rows");iki sorgu kullanacaksanız üstteki daha şık uğraştırmaz.
üstteki ikinci çözümdü bu arada.
Ben böyle bir durumda şöyle yapardım.
SELECT * FROM `table` ORDER BY `id` desc LIMIT 10
ve id'ye göre array_reverse fonksiyonu ile işlerdim. Bunu seçmemin sebebi tek sorgu olması.
İlginize teşekkürler, diğer kod daha uygundu scripte
yapacağın şey while döngüsünün içinde
$i=5;
while(bla......){
$q = 'degisken'.$i;
$$q = 'aktarılacak veriler';
$i--;
}ekrana basarken de for ile tersten bastırabilirsin
for($i=1; $i<6; $i++){
$q = 'degisken'.$i;
echo $$q;
}böyle bişey aklıma geldi deneyin bakalım bi
Teşekkürler
Kullandığım kod :
[PHP]
$sorgu = mysql_query("SELECT * FROM dort");
$sayi = mysql_num_rows($sorgu);
$sonuc = $sayi - 5;
$sor = mysql_query("select * from dort order by id asc limit $sonuc,$sayi");Sorun çözüldü