Tolong pilih kategori sesuai, jenis posting (pertanyaan atau bukan) dan sertakan tag/topik yang sesuai misal komputer, php, mysql, dll.
Promosi atau posting tidak pada tempatnya akan kami hapus.
Klik link berikut untuk informasi cara menyisipkan kode program supaya tampil rapi dan terformat dengan baik di diskusiweb.com: http://www.diskusiweb.com/discussion/50415/cara-menyisipkan-kode-program-di-diskusiweb-com

Baca cara posting gambar/image di post Anda: http://www.diskusiweb.com/discussion/47345/cara-menyisipkan-menyertakan-image-pada-posting/p1

[ask php] Nomor Surat Berdasarkan Nomor Halaman Agenda surat

Mohon bantuanya cara mendapatkan nomor surat otomatis di php gimana?
formatnya
421/02.01/NamaInstansi

421 = kode tetap tidak di rubah2
02 = nomor urut surat
01 = nomor halaman agenda (jika nomor urut surat sudah mencapai 20 maka halaman surat berpindah ke halaman berikutnya (+1) tapi nomor urut surat tetap berlanjut.
NamaInstansi = kode tetap tidak di rubah2.

Comments

  • @AbdulHaris itu cukup dengan menggunakan logika sederhana di php.
    Logikanya :
    1. Check di database nomor terakhir kemudian di simpan ke variable cth ($a = 02, $b = 01)
    2. kemudian di beri kondisi if($b == 20) maka set variable $b = 1 dan $a+=1
    3. Kemudian tinggal di tampilkan & di simpan ke database.
  • bisa contoh coding mas???
    soalx baru belajar :(
  • @AbdulHaris saya masih binggung sih sama penjelasan (jika nomor urut surat sudah mencapai 20 maka halaman surat berpindah ke halaman berikutnya (+1) tapi nomor urut surat tetap berlanjut.jadi kalo sudah masuk 20 - 999 nomor agendanya tetap 2? contoh 421/99.02 ? & untuk nomornya btsnya brp angka 1-99/999?
    // untuk penyimpanan data nomor itu tergantung struktur database anda, bisa di bagi 2 atau digabung menjadi 1 saja yg disimpan ke database, contoh 0201 / 02 , 01
    // connection database
    // Ambil data terakhir lalu simpan ke variable
    $urut = $data['urut']; // 19
    $agenda = $data['agenda']; // 1
    if(($urut+1) == 20)
    {
    $agenda+=1;
    }
    if($urut < 10)
    {
    $urut = "0".$urut; // untuk 01-09 set juga untuk agenda
    }
     
    //save ke database
     
    $nomor = "421/".$urut.".".$agenda."/"."NamaInstansi";
  • setelah nomornya mencapai 40 maka pindah lagi jadi halaman 3
  • edited April 2017
    maaf ini kode nya tapi nomor urutnya hanya sampai nomor 10
    mohon bantuanya :smiley:

    <?php
    $data_agenda = mysql_fetch_array(mysql_query("SELECT * FROM agenda_surat WHERE urut_surat IN (SELECT MAX(urut_surat) FROM agenda_surat)"));
    $urut = $data_agenda['urut_surat'];
    $agenda = $data_agenda['halaman_agenda'];
    if(($urut++) == 20)
    {
    $agenda+=1;
    }
    if($urut < 10)
    {
    $urut = "0".$urut;
    }
    if($agenda < 10)
    {
    $agenda = "0".$agenda;
    }
    ?>

  • @AbdulHaris berarti berlaku kelipatan sampai 200
    $data_agenda = mysql_fetch_array(mysql_Something is wrong("SELECT * FROM agenda_surat WHERE urut_surat IN (SELECT MAX(urut_surat) FROM agenda_surat)"));
    $urut = $data_agenda['urut_surat']+1;
    $agenda = $data_agenda['halaman_agenda'];
     
    $chk = array("20","40","60","80","100","120","140","160","180","200");
    if($urut < 10)
    $urut = "0".$urut;
    else{
    foreach($chk as $a)
    {
    if($urut == $a)
    {
    $agenda+=1;
    break;
    }
    }
    }
     
    if($agenda < 10)
    $agenda = "0".$agenda;
     
    echo $urut.$agenda;

  • its work gan
    terima kasih banyak atas bantuannya :smile:
Sign In or Register to comment.