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

pengelompakan view data

master mau tanya lagi, saya ada data seperti gambar
https://postimg.org/image/kqrm1174x/

dari data tersebut saya mau buat tampilan nya menjadi

No._Tanggal_______Norek_______Nama_______Uraian_______Debet_______Kredit
1 01/01/2017
2 01/01/2017
3 01/01/2017
4 01/01/2017
5 01/01/2017
____Total_________________________________________________Rp._________Rp.

No._Tanggal_______Norek_______Nama_______Uraian_______Debet_______Kredit
1 02/01/2017
2 02/01/2017
3 02/01/2017
____Total_________________________________________________Rp._________Rp.

No._Tanggal_______Norek_______Nama_______Uraian_______Debet_______Kredit
1 03/01/2017
2 03/01/2017
3 03/01/2017
____Total_________________________________________________Rp._________Rp.

Dst....

kira-kira mau bagaimana yah master....

Comments

  • Tq master labalaba, aku coba pelajarin dl
  • edited November 2017
    http://www.diskusiweb.com/discussion/comment/279625/#Comment_279625

    baca aja.

    tangkap logikanya, terapin di alur elo.
    sudah saya cek link yang dikasih sama master labalaba, tapi kondisinya sepertinya beda master, yang saya inginkan dari tampilan ini




    menjadi




    data itu akan muncul kalau saya melakukan pencarian berdasarkan periode tertentu, jadi tidak di 1 bulan itu saja, bisa pencarian itu sampai 1 tahun, kalau saya buat perulangan nya per kolom yang saya mau, bisa panjang nanti perulangan nya, ada solusi ga agar perulangan tidak banyak dan hasil tampilan seperti itu.

    tq sebelum nya....
  • edited November 2017
    sama mas ... ditangkap logikanya ...
    ada koreksi dikit sih di reply di bawahnya,
    tapi logikanya masih bisa dibaca kok.

    gw balik ke reply di atasnya yo, di tret yg sama ...
    itu contoh langsung yg ndak pake db dan email.

    http://www.diskusiweb.com/discussion/comment/279577/#Comment_279577
    <?php
    $a=array(
    array('email'=>'a@aaa.aaa','nama'=>'ali','hobi'=>'baca'),
    array('email'=>'a@aaa.aaa','nama'=>'ali','hobi'=>'jalan'),
    array('email'=>'a@aaa.aaa','nama'=>'ali','hobi'=>'makan'),
    array('email'=>'b@bbb.bbb','nama'=>'budi','hobi'=>'mancing'),
    array('email'=>'b@bbb.bbb','nama'=>'budi','hobi'=>'makan')
    );

    echo '<table border=1>';
    echo '<tr><td>no</td><td>email</td><td>nama</td><td>hobi</td></tr>';
    $c=1;
    $email='';
    foreach($a as $v) {
    if($email!=$v['email']) {
    echo '<tr><td>'.$c.'</td><td>'.$v['email'].'</td><td>'.$v['nama'].'</td><td>'.$v['hobi'].'</td></tr>';
    $email=$v['email'];
    $c++;
    }
    else {
    echo '<tr><td></td><td></td><td></td><td>'.$v['hobi'].'</td></tr>';
    }
    }
    echo '</table>';
    ?>
    coba itu di uji coba dulu ... pahami.

    poin utama logikanya ada di yg gw bold-underline.

    kalo gw ubah koding yg gw tunjukin di awal, dibuang email nya ...
    koreksi di bawahnya gw terapin sekalian ...
    <?php
    $a=array(
    array('email'=>'a@aaa.aaa','nama'=>'ali','kegiatan'=>'baca'),
    array('email'=>'a@aaa.aaa','nama'=>'ali','kegiatan'=>'jalan'),
    array('email'=>'a@aaa.aaa','nama'=>'ali','kegiatan'=>'makan'),
    array('email'=>'b@bbb.bbb','nama'=>'budi','kegiatan'=>'mancing'),
    array('email'=>'b@bbb.bbb','nama'=>'budi','kegiatan'=>'makan')
    );

    // ------------------------------------------------
    // generate body jadikan fungsi.
    // tinggal panggil.
    // tapi kalo bingung, ndak pake fungsi ya ndak apa.
    // ------------------------------------------------
    function generateBody($body='',$val=array(),$reset=0) {
    if($reset==1) {
    $body='<tr><td>No</td><td>nama</td><td>email</td><td>kegiatan</td></tr>';
    }
    else if($reset==2) {
    $body='<table border="1">'.$body.'</table>';
    }
    else {
    $body.=
    '<tr><td>'.$val['no'].'</td><td>'.$val['nama'].'</td><td>'.$val['email'].'</td><td>'.$val['kegiatan'].'</td></tr>';
    }
    return $body;
    }

    // ------------------------------------------------
    $send=true;
    $i=1;
    $email='';
    $body='';
    $body=generateBody($body,array(),1); // reset $body, isi cuma header table

    foreach($a as $row_spc) {
    if($email!=$row_spc['email']) {
    if($i!=1) {
    $body=generateBody($body,array(),2); // tutup $body table
    $send=true;
    echo $body;
    echo 'Message has been sent to : '.$email.'<br><br>';
    $body=generateBody($body,array(),1); // reset $body, isi cuma header table
    }
    $row_spc['no']=$i;
    $body=generateBody($body,$row_spc); // isi $body dengan data lengkap
    $send=false;
    $email=$row_spc['email'];
    $i++;
    }
    else {
    $row_spc['no']='';
    $row_spc['nama']='';
    $row_spc['email']='';
    $body=generateBody($body,$row_spc); // isi $body dengan hanya data kegiatan
    $send=false;
    }
    }

    if(!$send) { // periksa ada pesan terakhir yg belum dikirim
    $body=generateBody($body,array(),2); // tutup $body table
    echo $body;
    echo 'Message has been sent to : '.$email.'<br><br>';
    }
    ?>
    ... tetep ketemu logika yg sama ...

    masalah layout, tampilan, perhitungan ... itu tinggal kreasi elo aja.
    kapan layout berubah ...
    kapan perhitungan harus dilakukan ...
    kapan hasil perhitungan harus ditampilkan ...

    itu cuma isinya if() {...} dan else {...} nya doang.
  • master @labalaba dari sample [itu setelah saya ubah coding saya malah tetap sama tampilan seperti yang pertama saya kasih, cmn bedanya di bagian tanggal aja yang hilang, sedangkan tampilan yang saya mau berbeda 100% dari hasil itu.
    berikut coding saya master @labalaba

    <!DOCTYPE html> <html> <head> <title>LAPORAN JURNAL</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="shortcut icon" href="favicon.ico" /> <style> body { font-family: Tahoma; color: #000000; font-size: 10pt } </style> </head> <body> <?php session_start(); if(!isset($_SESSION['login_user'])){ header('location: ../../login.php'); // Mengarahkan ke Home Page } if(isset($_SESSION['ljurnal']) AND $_SESSION['ljurnal'] <> 'TRUE') { echo"<div class='w3-container w3-red'><p>Dilarang mengakses file ini.</p></div>"; die(); } require('../../lib/all_function.php'); include('../../lib/conn.php'); //Untuk database $db_rekp= $_GET['lpt'].'_'.gl_rekening_pemb; $db_jur = $_GET['lpt'].'_'.gl_jurnal; $tgl_awal = $_GET['tgl_awal']; $tgl_akhir = $_GET['tgl_akhir']; $rph = mysql_fetch_array(mysql_query("SELECT * FROM perusahaan WHERE kode = '$_GET[lpt]'")); ?> <table width="1240" border="0" cellpadding="0" cellspacing="0"> <tr> <td colspan="3" align="left"><strong>LAPORAN JURNAL</strong></td> </tr> <tr> <td colspan="3" align="left"><?=$rph['nama']?></td> </tr> <tr> <td width="80" align="left">ALAMAT</td> <td width="12" align="center">:</td> <td width="1248" align="left"><?=$rph['alamat']." ".$rph['kota']." ".$rph['prov']?></td> </tr> <tr> <td align="left">TELP</td> <td align="center">:</td> <td align="left"><?=$rph['telp']." Fax. ".$rph['fax']?></td> </tr> <tr> <td align="left">NPWP</td> <td align="center">:</td> <td align="left"><?=npwp($rph['npwp'])?></td> </tr> <tr> <td align="left">PERIODE</td> <td align="center">:</td> <td align="left"><?=$tgl_awal.' s/d '.$tgl_akhir?></td> </tr> </table> <table width="1240" border="0" cellpadding="0" cellspacing="0" rules="rows"> <tr height="20" valign="middle" bgcolor="#CCCCCC"> <td width="30" align="center"><strong>NO.</strong></td> <td width="90" align="center"><strong>TANGGAL</strong></td> <td width="70" align="center"><strong>NOREK</strong></td> <td width="340" align="center"><strong>NAMA</strong></td> <td width="450" align="center"><strong>URAIAN</strong></td> <td width="130" align="center"><strong>DEBET</strong></td> <td width="130" align="center"><strong>KREDIT</strong></td> </tr> <? $SQL = "SELECT a.tanggal as tanggal, a.nobukti as nobukti, a.jenis as jenis, a.kd as kd, a.kk as kk, a.ket1 as ket1, a.ket2 as ket2, a.jumlah as jumlah, b.namarek as namarekkd, c.namarek as namarekkk FROM $db_jur a JOIN $db_rekp b ON b.norek = a.kd JOIN $db_rekp c ON c.norek = a.kk where a.status = '1' AND a.tahun = '$_GET[tahun]'"; if($tgl_awal<>"" && $tgl_akhir<>""){ $SQL = $SQL . " AND tanggal between '".baliktgl($tgl_awal)."' AND '".baliktgl($tgl_akhir)."'"; } $SQL = $SQL . " ORDER BY tanggal ASC"; $hasil = mysql_query($SQL); $ctgl = ''; while($baris = mysql_Fetch_array($hasil)){ if($ctgl!=$baris['tanggal']){ ?> <tr> <td align="left"><?=++$no?></td> <td align="center"><?=baliktglindo($baris['tanggal'])?></td> <td align="center"><?=$baris['kd']?></td> <td align="left"><?=$baris['namarekkd']?></td> <td align="left"><?=$baris['ket1']?></td> <td align="right"><?=minuss($baris['jumlah'])?></td> <td align="right">&nbsp;</td> </tr> <tr> <td align="left"><?=++$no?></td> <td align="center"><?=baliktglindo($baris['tanggal'])?></td> <td align="center"><?=$baris['kk']?></td> <td align="left"><?php echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".$baris['namarekkk']; ?></td> <td align="left"><?=$baris['ket2']?></td> <td align="right">&nbsp;</td> <td align="right"><?=minuss($baris['jumlah'])?></td> </tr> <? $ctgl = $baris['tanggal']; $TOTAL = $TOTAL + $baris['jumlah']; }else{ ?> <tr> <td align="left"><?=++$no?></td> <td align="center"></td> <td align="center"><?=$baris['kd']?></td> <td align="left"><?=$baris['namarekkd']?></td> <td align="left"><?=$baris['ket1']?></td> <td align="right"><?=minuss($baris['jumlah'])?></td> <td align="right">&nbsp;</td> </tr> <tr> <td align="left"><?=++$no?></td> <td align="center"></td> <td align="center"><?=$baris['kk']?></td> <td align="left"><?php echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".$baris['namarekkk']; ?></td> <td align="left"><?=$baris['ket2']?></td> <td align="right">&nbsp;</td> <td align="right"><?=minuss($baris['jumlah'])?></td> </tr> <?php } } // end looping jurnal ?> <tr height="20" valign="middle" bgcolor="#CCCCCC"> <td align="right" colspan="5"><strong>TOTAL</strong></td> <td align="right"><strong><?=minuss($TOTAL)?></strong></td> <td align="right"><strong><?=minuss($TOTAL)?></strong></td> </tr> <? ?> </body>

    saya mau di setiap tanggal di awalin dengan nomor urut 1, 2, 3, dst dan setelah itu ada total pertanggal nya, dan itu berkelannjutan untuk tanggal berikutnya, itu berkelanjutan, dan tanggal itu tetap ditampilkan jgn dihilangkan.
    kalau dari punya master @labalaba hasilnya seperti ini,

    123a

    mohon pencerahaannya master @labalaba
  • edited November 2017
    yah ... ternyata ndak paham ...
    masalah layout, tampilan, perhitungan ... itu tinggal kreasi elo aja.
    kapan layout berubah ...
    kapan perhitungan harus dilakukan ...
    kapan hasil perhitungan harus ditampilkan ...

    itu cuma isinya if() {...} dan else {...} nya doang.
    <?php
    $a=array(
    array('tanggal'=>'2017-05-03','nama'=>'ali','debet'=>'10000','kredit'=>'0'),
    array('tanggal'=>'2017-05-03','nama'=>'budi','debet'=>'0','kredit'=>'3000'),
    array('tanggal'=>'2017-05-03','nama'=>'toni','debet'=>'4500','kredit'=>'0'),
    array('tanggal'=>'2017-05-02','nama'=>'toni','debet'=>'2000','kredit'=>'0'),
    array('tanggal'=>'2017-05-02','nama'=>'ali','debet'=>'7500','kredit'=>'0'),
    array('tanggal'=>'2017-05-01','nama'=>'budi','debet'=>'0','kredit'=>'8000'),
    array('tanggal'=>'2017-05-01','nama'=>'ali','debet'=>'0','kredit'=>'1500'),
    array('tanggal'=>'2017-05-01','nama'=>'toni','debet'=>'2000','kredit'=>'0'),
    array('tanggal'=>'2017-05-01','nama'=>'budi','debet'=>'0','kredit'=>'2500'),
    array('tanggal'=>'2017-05-01','nama'=>'ali','debet'=>'0','kredit'=>'3000')
    );

    // ------------------------------------------------
    // generate body jadikan fungsi.
    // tinggal panggil.
    // tapi kalo bingung, ndak pake fungsi ya ndak apa.
    // ------------------------------------------------
    function generateBody($body='',$val=array(),$reset=0) {
    if($reset==1) {
    $body='<tr><td>TANGGAL</td><td>NAMA</td><td>DEBET</td><td>KREDIT</td></tr>';
    }
    else if($reset==2) {
    $body='<table border="1">'.$body.'</table><br><br>';
    }
    else {
    $body.=
    '<tr><td>'.$val['tanggal'].'</td><td>'.$val['nama'].'</td><td>'.$val['debet'].'</td><td>'.$val['kredit'].'</td></tr>';
    }
    return $body;
    }

    // ------------------------------------------------
    $send=true;
    $tanggal='';
    $body='';
    $body=generateBody($body,array(),1); // reset $body, isi cuma header table

    $debet=$kredit=0;

    foreach($a as $row_spc) {
    if($tanggal!=$row_spc['tanggal']) {
    if($tanggal!='') {
    $body.='<tr><td colspan=2>SUBTOTAL</td><td>'.$debet.'</td><td>'.$kredit.'</td></tr>';
    $body=generateBody($body,array(),2); // tutup $body table
    $send=true;
    echo $body;
    $body=generateBody($body,array(),1); // reset $body, isi cuma header table
    $debet=$kredit=0;
    }
    $body=generateBody($body,$row_spc); // isi $body dengan data lengkap
    $tanggal=$row_spc['tanggal'];
    $debet+=$row_spc['debet'];
    $kredit+=$row_spc['kredit'];
    $send=false;
    }
    else {
    $body=generateBody($body,$row_spc); // isi $body dengan hanya data kegiatan
    $debet+=$row_spc['debet'];
    $kredit+=$row_spc['kredit'];
    $send=false;
    }
    }

    if(!$send) { // periksa data terakhir yg belum dicetak
    $body.='<tr><td colspan=2>SUBTOTAL</td><td>'.$debet.'</td><td>'.$kredit.'</td></tr>';
    $body=generateBody($body,array(),2); // tutup $body table
    echo $body;
    }
    ?>
    ... sama kok mas logikanya ...

    tinggal ngatur apa yg mau dihitung dan dicetak doang di dalam if-else nya.
  • edited November 2017
    master @labalaba kalau saya menggunakan database bukan data array seperti yang master @labalaba pakai, untuk $val=array() saya harus masukan apa yah?

    ini contoh yang saya buat
    <!DOCTYPE html> <html> <head> <title>LAPORAN JURNAL</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="shortcut icon" href="favicon.ico" /> <style> body { font-family: Tahoma; color: #000000; font-size: 10pt } </style> </head> <body> <?php session_start(); if(!isset($_SESSION['login_user'])){ header('location: ../../login.php'); // Mengarahkan ke Home Page } if(isset($_SESSION['ljurnal']) AND $_SESSION['ljurnal'] <> 'TRUE') { echo"<div class='w3-container w3-red'><p>Dilarang mengakses file ini.</p></div>"; die(); } require('../../lib/all_function.php'); include('../../lib/conn.php'); //Untuk database $db_rekp= $_GET['lpt'].'_'.gl_rekening_pemb; $db_jur = $_GET['lpt'].'_'.gl_jurnal; $tgl_awal = $_GET['tgl_awal']; $tgl_akhir = $_GET['tgl_akhir']; $rph = mysql_fetch_array(mysql_query("SELECT * FROM perusahaan WHERE kode = '$_GET[lpt]'")); ?> <table width="1240" border="0" cellpadding="0" cellspacing="0"> <tr> <td colspan="3" align="left"><strong>LAPORAN JURNAL</strong></td> </tr> <tr> <td colspan="3" align="left"><?=$rph['nama']?></td> </tr> <tr> <td width="80" align="left">ALAMAT</td> <td width="12" align="center">:</td> <td width="1248" align="left"><?=$rph['alamat']." ".$rph['kota']." ".$rph['prov']?></td> </tr> <tr> <td align="left">TELP</td> <td align="center">:</td> <td align="left"><?=$rph['telp']." Fax. ".$rph['fax']?></td> </tr> <tr> <td align="left">NPWP</td> <td align="center">:</td> <td align="left"><?=npwp($rph['npwp'])?></td> </tr> <tr> <td align="left">PERIODE</td> <td align="center">:</td> <td align="left"><?=$tgl_awal.' s/d '.$tgl_akhir?></td> </tr> </table> <?php $SQL = "SELECT a.tanggal as tanggal, a.nobukti as nobukti, a.jenis as jenis, a.kd as kd, a.kk as kk, a.ket1 as ket1, a.ket2 as ket2, a.jumlah as jumlah, b.namarek as namarekkd, c.namarek as namarekkk FROM $db_jur a JOIN $db_rekp b ON b.norek = a.kd JOIN $db_rekp c ON c.norek = a.kk where a.status = '1' AND a.tahun = '$_GET[tahun]'"; if($tgl_awal<>"" && $tgl_akhir<>""){ $SQL = $SQL . " AND tanggal between '".baliktgl($tgl_awal)."' AND '".baliktgl($tgl_akhir)."'"; } $SQL = $SQL . " ORDER BY tanggal ASC"; $hasil = mysql_query($SQL); function generateBody($body='',$val=array(),$reset=0) { if($reset==1){ $body=' <tr height="20" valign="middle" bgcolor="#CCCCCC"> <td width="30" align="center"><strong>NO.</strong></td> <td width="90" align="center"><strong>TANGGAL</strong></td> <td width="70" align="center"><strong>NOREK</strong></td> <td width="340" align="center"><strong>NAMA</strong></td> <td width="450" align="center"><strong>URAIAN</strong></td> <td width="130" align="center"><strong>DEBET</strong></td> <td width="130" align="center"><strong>KREDIT</strong></td> </tr>'; }elseif($reset==2){ $body='<table width="1240" border="0" cellpadding="0" cellspacing="0" rules="rows">'.$body.'</table><br>'; }else{ $body.= '<tr> <td align="left">'.++$no.'</td> <td align="center">'.baliktglindo($baris['tanggal']).'</td> <td align="center">'.$baris['kd'].'</td> <td align="left">'.$baris['namarekkd'].'</td> <td align="left">'.$baris['ket1'].'</td> <td align="right">'.minuss($baris['jumlah']).'</td> <td align="right">&nbsp;</td> </tr> <tr> <td align="left">'.++$no.'</td> <td align="center">'.baliktglindo($baris['tanggal']).'</td> <td align="center">'.$baris['kk'].'</td> <td align="left">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'.$baris['namarekkk'].'</td> <td align="left">'.$baris['ket2'].'</td> <td align="right">&nbsp;</td> <td align="right">'.minuss($baris['jumlah']).'</td> </tr>'; } return $body; } $send=true; $tanggal=''; $body=''; $body=generateBody($body,array(),1); $debet=$kredit=0; while($baris = mysql_Fetch_array($hasil)){ if($tanggal!=$baris['tanggal']) { if($tanggal!='') { $body.='<tr><td colspan=5>SUBTOTAL</td><td align="right">'.minuss($debet).'</td><td align="right">'.minuss($kredit).'</td></tr>'; $body=generateBody($body,array(),2); $send=true; echo $body; $body=generateBody($body,array(),1); $debet=$kredit=0; } $body=generateBody($body,$baris); $tanggal=$baris['tanggal']; $debet+=$baris['jumlah']; $kredit+=$baris['jumlah']; $send=false; }else { $body=generateBody($body,$baris); $debet+=$baris['jumlah']; $kredit+=$baris['jumlah']; $send=false; } } // end looping jurnal if(!$send) { $body.='<tr><td colspan=5>SUBTOTAL</td><td align="right">'.minuss($debet).'</td><td align="right">'.minuss($kredit).'</td></tr>'; $body=generateBody($body,array(),2); echo $body; } ?>
    tolong koreksinya yah, hasil sdh muncul cuman data yang di database tidak muncul dikarenaka $val=array() aja. tq
  • master @labalaba sudah keluar datanya rupanya tinggal disamakan aja dengan while nya, saya ganti jadi $baris langsung muncul datanya, cuman untuk penomoran agar berurut 1,2,3,4, dst mau gimana yah???
  • edited November 2017
    foreach() di ganti while() ... beres mas ...
    di tret yg satunya gw juga sudah nulis gitu ...

    gw ngasih contoh kaya gitu biar gampang dicoba.
    ndak perlu database segala macem.
    yg penting logika alurnya kebaca.



    masalah nomer ... hayo coba dulu :D
    sama aja kok.

    baca aja logika nya ngitung subtotal debet ama kredit.
    sama.
    inisialisasinya sama.
    tempat nambahnya sama.
    yg beda cuma ...
    kalo subtotal di cetak di akhir, kalo nomer cetaknya bersamaan dgn data.
    kalo subtotal di tambah dari isi database, kalo nomer cuma tinggal +1.

    kalo salah, posting kemari yg sudah dicoba dibuat.
    jadi gw bisa baca logika elo.



    jangan2 abis ini elo bakal nanya ttg grand total ? :D :D :D
    sama aja.
    liat logika nya subtotal.
    cuma bedanya kalo subtotal tiap perubahan tanggal di reset balik ke 0.
    grand total tidak perlu.

    dan grand total cuma di cetak sekali paling akhir.
    di luar loop, setelah loop selesai.
  • iy mas, kalau grand total nanti paling saya sum dari perintah mysql nya saya, ok mas saya coba dl yg penomoran, tq atas bagi ilmu nya, nanti saya ganggu lagi klo sampai ga dapat...hehe....
  • edited November 2017
    kalau grand total nanti paling saya sum dari perintah mysql nya saya
    ... salah ...

    ya yg kaya gini mas yg gw kuatirin kemarin pas elo ngeluh program elo lambat.
    query tidak pada tempatnya.

    kalo elo pake alur kaya gitu artinya elo query 2x di sumber data yg sama.
    kalo data dikit ndak masalah.
    tapi kalo data bejibun, lemot lah hasilnya.
    keluar, tapi lambat.

    kesalahan koding bukan selalu harus terjadi error.
    tapi bisa karena salah logika dan/atau alur pemrograman.

    pilihan elo cuma 2 :

    - dari awal pake query rollup ... jadi query cuma sekali.

    - atau sekalian elo hitung sepanjang elo menampilkan data.
    soalnya semua angka sudah elo pegang, dan sedang diproses untuk ditampilkan.
    itu bisa sekalian dihitung.
    saat proses menampilkan selesai, saat itu juga elo sudah pegang jumlah total.

    begitu ...
  • mas @labalaba untuk grandtotal sudah dapat, cuman untuk nomor masih error dari semalam saya coba...
    nih koding saya master

    <!DOCTYPE html> <html> <head> <title>LAPORAN JURNAL</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="shortcut icon" href="favicon.ico" /> <style> body { font-family: Tahoma; color: #000000; font-size: 10pt } </style> </head> <body> <?php session_start(); if(!isset($_SESSION['login_user'])){ header('location: ../../login.php'); // Mengarahkan ke Home Page } if(isset($_SESSION['ljurnal']) AND $_SESSION['ljurnal'] <> 'TRUE') { echo"<div class='w3-container w3-red'><p>Dilarang mengakses file ini.</p></div>"; die(); } require('../../lib/all_function.php'); include('../../lib/conn.php'); //Untuk database $db_rekp= $_GET['lpt'].'_'.gl_rekening_pemb; $db_jur = $_GET['lpt'].'_'.gl_jurnal; $tgl_awal = $_GET['tgl_awal']; $tgl_akhir = $_GET['tgl_akhir']; $rph = mysql_fetch_array(mysql_query("SELECT * FROM perusahaan WHERE kode = '$_GET[lpt]'")); ?> <table width="1240" border="0" cellpadding="0" cellspacing="0"> <tr> <td colspan="3" align="left"><strong>LAPORAN JURNAL</strong></td> </tr> <tr> <td colspan="3" align="left"><?=$rph['nama']?></td> </tr> <tr> <td width="80" align="left">ALAMAT</td> <td width="12" align="center">:</td> <td width="1248" align="left"><?=$rph['alamat']." ".$rph['kota']." ".$rph['prov']?></td> </tr> <tr> <td align="left">TELP</td> <td align="center">:</td> <td align="left"><?=$rph['telp']." Fax. ".$rph['fax']?></td> </tr> <tr> <td align="left">NPWP</td> <td align="center">:</td> <td align="left"><?=npwp($rph['npwp'])?></td> </tr> <tr> <td align="left">PERIODE</td> <td align="center">:</td> <td align="left"><?=$tgl_awal.' s/d '.$tgl_akhir?></td> </tr> </table> <?php $SQL = "SELECT a.tanggal as tanggal, a.nobukti as nobukti, a.jenis as jenis, a.kd as kd, a.kk as kk, a.ket1 as ket1, a.ket2 as ket2, a.jumlah as jumlah, b.namarek as namarekkd, c.namarek as namarekkk FROM $db_jur a JOIN $db_rekp b ON b.norek = a.kd JOIN $db_rekp c ON c.norek = a.kk where a.status = '1' AND a.tahun = '$_GET[tahun]'"; if($tgl_awal<>"" && $tgl_akhir<>""){ $SQL = $SQL . " AND tanggal between '".baliktgl($tgl_awal)."' AND '".baliktgl($tgl_akhir)."'"; } $SQL = $SQL . " ORDER BY tanggal ASC"; $hasil = mysql_query($SQL); function generateBody($body='',$baris,$reset=0){ if($reset==1){ $body=' <tr height="20" valign="middle" bgcolor="#CCCCCC"> <td width="30" align="center"><strong>NO.</strong></td> <td width="90" align="center"><strong>TANGGAL</strong></td> <td width="70" align="center"><strong>NOREK</strong></td> <td width="340" align="center"><strong>NAMA</strong></td> <td width="450" align="center"><strong>URAIAN</strong></td> <td width="130" align="center"><strong>DEBET</strong></td> <td width="130" align="center"><strong>KREDIT</strong></td> </tr>'; }elseif($reset==2){ $body='<table width="1240" border="0" cellpadding="0" cellspacing="0" rules="rows">'.$body.'</table><br>'; }else{ $body.= '<tr> <td align="left">'.$n.'</td> <td align="center">'.baliktglindo($baris['tanggal']).'</td> <td align="center">'.$baris['kd'].'</td> <td align="left">'.$baris['namarekkd'].'</td> <td align="left">'.$baris['ket1'].'</td> <td align="right">'.minuss($baris['jumlah']).'</td> <td align="right">&nbsp;</td> </tr> <tr> <td align="left">'.$n1.'</td> <td align="center">'.baliktglindo($baris['tanggal']).'</td> <td align="center">'.$baris['kk'].'</td> <td align="left">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'.$baris['namarekkk'].'</td> <td align="left">'.$baris['ket2'].'</td> <td align="right">&nbsp;</td> <td align="right">'.minuss($baris['jumlah']).'</td> </tr>'; } return $body; } $send=true; $tanggal=''; $body=''; $body=generateBody($body,$baris,1,0); $debet=$kredit=0; $tdebet=$tkredit=0; $n=0; while($baris = mysql_Fetch_array($hasil)){ $tdebet=$tdebet+$baris['jumlah']; $tkredit=$tkredit+$baris['jumlah']; if($tanggal!=$baris['tanggal']) { $n=$n+1; if($tanggal!='') { $body.='<tr bgcolor="#CCCCCC"><td colspan=5><strong>SUBTOTAL'.$no1.'</strong></td><td align="right"><strong>'.minuss($debet).'</strong></td><td align="right"><strong>'.minuss($kredit).'</strong></td></tr>'; $body=generateBody($body,$baris,2,1); $send=true; echo $body; $body=generateBody($body,$baris,1); $debet=$kredit=0; $n=$n1=0; } $body=generateBody($body,$baris); $tanggal=$baris['tanggal']; $debet+=$baris['jumlah']; $kredit+=$baris['jumlah']; $send=false; }else { $n=$n+1; $body=generateBody($body,$baris); $debet+=$baris['jumlah']; $kredit+=$baris['jumlah']; $send=false; } } // end looping jurnal if(!$send) { $body.='<tr bgcolor="#CCCCCC"><td colspan=5><strong>SUBTOTAL</strong></td><td align="right"><strong>'.minuss($debet).'</strong></td><td align="right"><strong>'.minuss($kredit).'</strong></td></tr>'; $body=generateBody($body,array(),2); echo $body; } echo ' <table width="1240" border="0" cellpadding="0" cellspacing="0" rules="rows"> <tr bgcolor="#CCCCCC"> <td width="980" colspan=5><strong>GRANDTOTAL</strong></td> <td width="130" align="right"><strong>'.minuss($tdebet).'</strong></td> <td width="130" align="right"><strong>'.minuss($tkredit).'</strong></td> </tr> </table>'; ?>

    tolong koreksi master....
  • function generateBody($body='',$baris,$reset=0)

    itu fungsi parameternya cuma 3 ...

    $body=generateBody($body,$baris,1,0);
    $body=generateBody($body,$baris,2,1);

    kok dipanggil pake 4 parameter ?

    ...

    sudah bener kok nomer nya.
    cuma kurang kirim ke fungsi nya saja.

    ubah
    <td align="left">'.$n.'</td>
    jadi
    <td align="left">'.$baris['n'].'</td>


    ubah (ada 2)
    $body=generateBody($body,$baris);
    jadi
    $baris['n']=$n;
    $body=generateBody($body,$baris);
  • sory baru sempat lihat, soalnya beberpa hari ini lagi sibuk urusan kantor...hehehe...besok aku coba dulu master @labalaba, yg 4 parameter aku coba2 punya master, lupa kehapus waktu di tampilin sini...sory master buat pusing aja...hahaha....
  • ok master selesai juga masalah nya tadi aku ada pembahan lagi di coding nya pas bagian ini
    while($baris = mysql_Fetch_array($hasil)){
    $tdebet=$tdebet+$baris['jumlah'];
    $tkredit=$tkredit+$baris['jumlah'];
    if($tanggal!=$baris['tanggal']) {
    $n=$n+1;
    $n1=$n1+2;

    if($tanggal!='') {
    $body.='SUBTOTAL'.$no1.''.minuss($debet).''.minuss($kredit).'';
    $body=generateBody($body,$baris,2);
    $send=true;
    echo $body;
    $body=generateBody($body,$baris,1);
    $debet=$kredit=0;
    $n=1;
    $n1=2;

    }
    $baris['n']=$n;
    $baris['n1']=$n1;
    $body=generateBody($body,$baris);
    $tanggal=$baris['tanggal'];
    $debet+=$baris['jumlah'];
    $kredit+=$baris['jumlah'];
    $send=false;
    }else {
    $n=$n+2;
    $n1=$n1+2;

    $baris['n']=$n;
    $baris['n1']=$n1;
    $body=generateBody($body,$baris);
    $debet+=$baris['jumlah'];
    $kredit+=$baris['jumlah'];
    $send=false;
    }
    }
    hasilnya sdh sesuai dengan yang saya mau...
    tq master @labalaba
Sign In or Register to comment.