Dapatkan 'Easy Gammu Installer' - Cara Mudah Install Gammu + Ebook Gammu
Ingin Punya Script SMS Gateway dengan PHP + MySQL?

Dapatkan segera phpSMS V3.0, software SMS Gateway multi fungsi berbasis web buatan saya sendiri untuk keperluan Anda.
[Info Lengkap...]

Membuat Nomor Urut Hasil Query di PHP


August 31st, 2009 | by rosihanari | Cetak Artikel Ini Cetak Artikel Ini

Suatu ketika, mas Bagus (salah seorang member saya) merequest artikel di blog ini. Beliau menanyakan bagaimana cara membuat nomor urut dari tampilan hasil query di PHP.

Maaf mas Bagus, baru sempat dipostin sekarang… maklum, karena banyak kerjaan di kantor.

OK.. sebenarnya ide untuk membuat nomor urut hasil query di PHP ini cukup mudah, yaitu dengan konsep membuat increment mulai dari 1, 2, … dst sampai sejumlah record hasil query. Untuk lebih jelasnya saya ambil kasus seperti di bawah ini.

Misalnya kita punya tabel dan data sebagai berikut

CREATE TABLE `mhs` (
  `nim` varchar(10),
  `namamhs` varchar(30),
  `alamat` text,
  `sex` varchar(10),
  PRIMARY KEY  (`nim`)
);
INSERT INTO `mhs` VALUES ('M0197001', 'ROSIHAN ARI YUANA', 'COLOMADU', 'L');
INSERT INTO `mhs` VALUES ('M0197002', 'DWI AMALIA FITRIANI', 'KUDUS', 'P');
INSERT INTO `mhs` VALUES ('M0197003', 'FAZA FAUZAN KH.', 'COLOMADU', 'L');
INSERT INTO `mhs` VALUES ('M0197004', 'NADA HASANAH', 'COLOMADU', 'P');
INSERT INTO `mhs` VALUES ('M0197016', 'MUH. AHSANI TAQWIM', 'COLOMADU', 'L');

Selanjutnya kita akan menampilkan semua data mahasiswa di atas dengan query yang dijalankan di PHP

<?php
mysql_connect("dbhost", "dbuser", "dbpass");
mysql_select_db("dbname");

echo "<table border='1'>";
echo "<tr><th>NIM</th><th>Nama MHS</th><th>Alamat</th><th>J. Kelamin</th></tr>";

$query = "SELECT * FROM mhs";
$hasil = mysql_query($query);
while ($data = mysql_fetch_array($hasil))
{
   echo "<tr><td>".$data['nim']."</td><td><td>".$data['namamhs']."</td><td><td>".$data['alamat']."</td><td><td>".$data['sex']."</td></tr>";
}

?>

Hasil script di atas akan tampak seperti di bawah ini

Membuat Nomor Urut Hasil Query di PHP

Nah untuk menampilkan nomor urutnya: 1, 2, …, dst di setiap baris record datanya maka kita tinggal buat increment dengan nilai awal 1. Dalam contoh ini, kita gunakan variabel $noUrut.

<?php
mysql_connect("dbhost", "dbuser", "dbpass");
mysql_select_db("dbname");

echo "<table border='1'>";
echo "<tr><th>No</th><th>NIM</th><th>Nama MHS</th><th>Alamat</th><th>J. Kelamin</th></tr>";

$query = "SELECT * FROM mhs";
$hasil = mysql_query($query);

$noUrut = 1;

while ($data = mysql_fetch_array($hasil))
{
   echo "<tr><td>".$noUrut."</td><td>".$data['nim']."</td><td>".$data['namamhs']."</td><td>".$data['alamat']."</td><td>".$data['sex']."</td></tr>";
   $noUrut++; // increment untuk menampilkan nomor urut
}

?>

atau boleh kita membuat nilai awal $noUrut = 0, akan tetapi increment $noUrut++ nya kita letakkan sebelum menampilkan datanya

<?php
mysql_connect("dbhost", "dbuser", "dbpass");
mysql_select_db("dbname");

echo "<table border='1'>";
echo "<tr><th>No</th><th>NIM</th><th>Nama MHS</th><th>Alamat</th><th>J. Kelamin</th></tr>";

$query = "SELECT * FROM mhs";
$hasil = mysql_query($query);

$noUrut = 0;

while ($data = mysql_fetch_array($hasil))
{
   $noUrut++; // increment untuk menampilkan nomor urut
   echo "<tr><td>".$noUrut."</td><td>".$data['nim']."</td><td>".$data['namamhs']."</td><td>".$data['alamat']."</td><td>".$data['sex']."</td></tr>";
}

?>

Nah… hasil dari script modifikasi di atas tampak seperti di bawah ini

Membuat Nomor Urut Hasil Query di PHP

OK deh.. mudah-mudahan artikel ini bisa menjawab pertanyaan mas Bagus dan juga visitor setia blog ini. Mungkin artikel ini so simple bagi Anda yang sudah berpengalaman di PHP, tapi bisa jadi sangat bermanfaat bagi mereka yang sedang belajar :-)

VN:F [1.9.3_1094]
Rating: 5.5/10 (2 votes cast)
Membuat Nomor Urut Hasil Query di PHP, 5.5 out of 10 based on 2 ratings
Anda ingin mendownload beberapa tool programming 100% gratis?
Silakan download di FREE PROGRAMMING TOOLS.
atau ingin berdonasi untuk pengembangan blog ini cukup dengan $1 via Paypal?



Beberapa artikel terkait


Share this article on:

Kata kunci: menampilkan hasil query - nomor urut query - php mysql script - query di php - query php mysql - query sql di php -


Ada 20 komentar dalam artikel ini.

  1. sahL says:

    Terimakasih Pa Ari untuk sharingnya.
    Saya coba terapkan dengan data yang agak banyak dan ditampilkan dengan sistem paging. Masalahnya, kenapa ya pas tampilan data di halam 2 dan seterusnya selalu memulai penomoran dari 1 lagi. Bagaimana caranya agar penomoran berlanjut dari halaman awal sampai seterusnya ya?
    Maaf kl pertanyaannya bodoh, maklum newbi.

    btw, kirim komen pake mozilla gagal terus Pa skrg. ni pake IE
    Thx b4
    Selamat menjalankan ibadah2 di bulan suci ini.

    sL

  2. rosihanari says:

    to sahl: pertanyaan Anda sudah saya jawab di artikel “Membuat Nomor Urut Hasil Query di PHP (Combined with Paging)

  3. mukti says:

    Yth, Pak Ari..

    Bisa apa ngga ya kira2 php menghasilkan laporan dg bentuk format misalnya sbb:

    No Urut : 99999
    Tanggal : 99/99/9999

    ———————————————–
    No.Urt Nm Brng Hrg Satuan Qty Jumlah
    ———————————————–
    99 xxxxxxxxxx 9.999 99 9.999.999
    99 xxxxxxxxxx 9.999 99 9.999.999
    99 xxxxxxxxxx 9.999 99 9.999.999
    ———————————————–
    total 99.999.999
    ———————————————–

    datanya diambil dari tabel2 mssql
    Terima kasih sebelumnya

  4. rosihanari says:

    to mukti: ya.. bisa saja mas, tapi report di atas pastinya merelasikan lebih dari 1 tabel.

  5. yuni says:

    mohon bantuannya…….
    bgmn caranya bila membuat no pendaftaran secara otomatis dengan memakai kode jurusan tetapi kode jurusan bisa berubah apabila kita memilih jurusan yg berbeda, apakah kode jurusan dibuatkan tabel tersendiri atau bisa diambil dari tabel user
    contoh untuk no pendaftaran :
    AK001 dst
    AP001 dst
    PJ001 dst

  6. mukti says:

    Yth Pak Ari..

    Pak..kalo misalnya user A login di komputer 1, user A belum logout, tapi user A login kembali di komputer 2. Bisa ngga Pak… php mencegah agar 1 user hanya boleh 1 x login dan sebelum logout, maka ia tidak boleh login di komputer mana pun.

    Terima kasih sebelumnya

  7. rosihanari says:

    @mukti: seperti itu bisa mas terjadi mas. Untuk mencegah itu sebaiknya anda buat sebuah field di tabel user, misal namanya ‘status’. Lalu isi dari status itu bisa berupa angka 0 atau 1. Angka 0 berarti si user belum login, dan 1 artinya sudah login. Begitu si user sudah login, maka secara otomatis nilai status menjadi 1. Nah… kalau dia sudah 1, maka anda buat mekanisme di script anda bhw dia tidak bisa login lagi sebelum dia logiut. Artinya seorang user hanya boleh login ketika statusnya masih 0. Paham maksudnya saya ya?

  8. mukti says:

    Iya sih Pak, tp kalo itu diterapkan, bagaimana kalo user cuma klik close aja (dari ikon pojok kanan atas)tanpa logout dari menu atau putus sumber daya listrik, pasti status terakhir masih login, akibatnya selanjutnya jika user login, maka akan ditolak.

  9. rosihanari says:

    @mukti: mm… kalo gitu sistem anda musti menyimpan segala aktivitas atau log usernya. Jika tidak ada perubahan dari aktivitasnya atau lognya selama beberapa jam, maka secara otomatis dianggap logout.

  10. mukti says:

    Terima kasih Pak atas sharingnya, saya pikir tadinya php mempunyai fungsi yg dapat mencegah user utk login 2 x atau lebih pada waktu yg sama.

  11. rosihanari says:

    @mukti: setahu saya tidak ada mas di PHP function seperti itu, kecuali anda harus membuatnya sendiri.

  12. mukti says:

    Iya Pak maksud saya juga bgitu, cm blm ktemu key nya

  13. mukti says:

    Pak.. kayanya jawabannya ada di http://blog.rosihanari.net/apa-sih-gunanya-session-di-php dan http://blog.rosihanari.net/membuat-autentifikasi-user-di-php, tinggal di balik dan dimodif sedikit. Trima kasih

  14. r3q says:

    pak, kalo untuk buat nomor otomatis misalnya digunakan sebagai nomor urut agenda surat bagaimana ya ? terima kasih sebelumnya

  15. dinda says:

    Yang terhormat pak rosihan
    Pak saya pemula di php, bagaimana mengurutkan data dari dari terbesar (descending)
    misal
    no,nama,nilai
    1,ani,4
    2,siti,2
    3. rudi,8
    dst…

    Pertanyaan :
    Bagaimana scriptnya untuk mengurutkan data berdasarkan nilai dari terbesar
    Bagaimana membatasi yang dicetat misalnya anya 2 recor aja
    atas bantuannya saya ucapkan terima kasih

  16. rosihanari says:

    @dinda: gunakan query SELECT * FROM tabel ORDER BY nilai DESC LIMIT 0, 2

  17. iyan says:

    pak klo hasil query yg ditampilkan berdasarkan urutan alpabet nama orang..misalkan :
    1. Adi
    2. Ayu
    3. Bani
    4. Budi
    itu caranya bgm? Trims

  18. rosihanari says:

    @iyan: tinggal tambahkan ‘ORDER BY nama’ saja di belakang query nya mas.



Tolong beri komentar donk!

Komentar Anda akan berguna untuk kemajuan blog ini.


Mohon maaf, komentar yang menggunakan email palsu atau komentar bernada negatif atau cemooh secara otomatis akan terhapus karena dianggap spam dan tidak akan tampil dalam daftar komentar.

Dimohon jangan pula memasukkan code program dalam bentuk apapun ke dalam komentar karena akan dianggap spam.

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word