Daftar dan Belajar Sekarang!

Cara menampilkan data dari urutan terbalik

foto rachmatsumo
5 Kontribusi 0 Coto
2 bulan yang lalu
Misal kita mempunyai data sebanyak 60, kita mau menampilkan data 30 terakhir namun yang tampil dari data lama ke baru dalam 30 terakhir. Kalo pake desc limit 30, yang tampil dari data terbaru 30, bukan terlama 30 -- ke data terbaru. mau di balik dari data terlama berarti urutan tampil daRI 31, 32, 33 dst... bukan 60,59,58

Tag: php mysql database

✔ Forum ini sudah terjawab


Jawaban
foto banisrailubis
25 Kontribusi 18 Coto
2 bulan yang lalu
Coba pas ngambil dari database diurutkan berdasarkan DESC LIMIT 30. Kemudian di kenakan array_reverse(). Contoh:
<?php
    $koneksi = mysqli_connect("localhost", "root", "", "nama_database");

    $exec_query = mysqli_query($koneksi, "SELECT * FROM nama_table ORDER BY id DESC LIMIT 30");

    $ambilData = array();
    $no = 1;
    $order = 0;
    while ($data = mysqli_fetch_assoc($exec_query)) {
        $ambilData[$order]["no"] = $no++;
        $ambilData[$order]["nama_field1"] = $data["nama_field1"];
        $ambilData[$order]["nama_field2"] = $data["nama_field2"];
        $ambilData[$order]["nama_field3"] = $data["nama_field3"];
        $ambilData[$order]["nama_field4"] = $data["nama_field4"];
        $order++;
    }
    
    echo "<pre>";
    print_r($data); // hasilnya urutan waktu kita ambil dari database, yakni 60, 59, 59, ..., 31.
    echo "</pre>";
   
    $balik_data = array_reverse($ambilData);
    // Sedangkan hasil dibawah ini akan mengurutkan hasil diatas menjadi 31, 32, 33, 34, ..., 60.
    foreach ($balik_data as $key => $value) {
        echo $value["no"] . ") " . $value["nama_field1"] . " || " . $value["nama_field2"] . " || " . $value["nama_field3"] . " || " . $value["nama_field4"];
        echo "<br>";
    }
Terimakasih...
answered icon
foto jeffian
16 Kontribusi 11 Coto
2 bulan yang lalu
kalau data terlama tinggal urutin pake ASC aja EDIT: kalo gitu coba pake array_reverse aja gan ( pastiin querynya result_array / fetch_array ) contohnya gini
$data = array(
 [
  'angka' => 4,
   'desc' => 'empat'
  ],
  [
  'angka' => 3,
   'desc' => 'tiga'
  ],
  [
  'angka' => 2,
   'desc' => 'dua'
  ],
  [
  'angka' => 1,
   'desc' => 'satu'
  ]
);
$reverseData = array_reverse($data);
foreach($reverseData as $value){
  echo "$value[angka] - $value[desc] <br>";
}
OUTPUTnya :
1 - satu
2 - dua
3 - tiga
4 - empat
  • kalo asc akan nampil data 1-30, sedangkan yang mau ditampilkan 31-60 dengan urutan asc. Kalo pake between datanya tidak tampil up to date, harus di ubah terus nilai between nya - rachmatsumo
  • bisa pake array reverse, atau kalo pake framework bisa pake 2 function gan, jadi pake 2 query - jeffian

foto banisrailubis
25 Kontribusi 18 Coto
2 bulan yang lalu
Coba pas ngambil dari database diurutkan berdasarkan DESC LIMIT 30. Kemudian di kenakan array_reverse(). Contoh:
<?php
    $koneksi = mysqli_connect("localhost", "root", "", "nama_database");

    $exec_query = mysqli_query($koneksi, "SELECT * FROM nama_table ORDER BY id DESC LIMIT 30");

    $ambilData = array();
    $no = 1;
    $order = 0;
    while ($data = mysqli_fetch_assoc($exec_query)) {
        $ambilData[$order]["no"] = $no++;
        $ambilData[$order]["nama_field1"] = $data["nama_field1"];
        $ambilData[$order]["nama_field2"] = $data["nama_field2"];
        $ambilData[$order]["nama_field3"] = $data["nama_field3"];
        $ambilData[$order]["nama_field4"] = $data["nama_field4"];
        $order++;
    }
    
    echo "<pre>";
    print_r($data); // hasilnya urutan waktu kita ambil dari database, yakni 60, 59, 59, ..., 31.
    echo "</pre>";
   
    $balik_data = array_reverse($ambilData);
    // Sedangkan hasil dibawah ini akan mengurutkan hasil diatas menjadi 31, 32, 33, 34, ..., 60.
    foreach ($balik_data as $key => $value) {
        echo $value["no"] . ") " . $value["nama_field1"] . " || " . $value["nama_field2"] . " || " . $value["nama_field3"] . " || " . $value["nama_field4"];
        echo "<br>";
    }
Terimakasih...

foto rachmatsumo
5 Kontribusi 0 Coto
1 bulan yang lalu
makasih semuanya gan, alhamdulillah berhasil


Login untuk diksusi di forum sekolah koding