...Open Up your mind, n share together
best view 1024 X 768
 

M e n u

 ::  H o m e

 ::  A r t i c l e

 ::  Share It!

 ::  Wise Words

 ::  L y r i c

 ::  Web Link

 ::  Direct Download

 ::  Ringtone Download

 ::  Torrent Download

 ::  Guest Book

 ::  Condemn Israel

 ::  Deepforest

Antivirus Update
Norton, AVG, AVAST!
Automatic Update,
direct dload
... M o r e ...
Latest Article
.: Sedekah Solusi Atasi Krisis
.: Hidup Sehat Ala Rasulullah SAW
.: Mengapa Saya Berjilbab?
.: Instal Aplikasi Java Islami di Handphone
.: Garansi Surga Allah
.: Kumpulan Aplikasi, Software, MP3 Islam
.: Mengalirlah Yg Deras
... M o r e ...
Share It!
.: possible...
.: Bisnis Online Dengan BLOG...
.: Mohon Doa Restunya...
.: Ketika yang bener jadi mlungker ...
.: Infaq Donasi Peduli Palestina...
.: [CoLiq Blog] Download ala Rapidshare ...
.: Hosting UGM makin parah aja ...
... M o r e ...
Latest Comments
.: Harus bersedakah biar ...
.: sedekah memang segalanyaa ...
.: Keren sob, ditunggu kunbalnya <a ...
.: Mohon dijelaskan lebih jauh ...
.: Untuk membuat bisnis online ...
.: bagus sekali tulisannya.. meski ...
.: Sangat patut dicontoh......
.: Just Jambu merah...
.: karakter aku mirip siapa ...
.: yang belum make jilbab,cba ...
USER IP
54.162.151.77
 
wongkediri.com
 
 

:: ARTIKEL Programming >>  


PHP: Display Kolom dinamis

Kali ini mau sharing tentang script programming ah..


Sebenarnya bingung juga mau share tentang apa, karena hampir semua ada di internet. Itulah asiknya Opensource iya nggak ;)


OK ini adalah hal yg sangat sederhana tetapi menurutku cukup bermanfaat. Ceritanya dulu pas mau tampilkan data yang jumlahnya dinamis, Bisa 5, 10 20 ga masalah karena masih pendek kalo langsung d tampilkan. Tapi kalo datanya udah 150, 200?? bisa sih pake sistem pagging seperti d buku tamu tapi untuk beberapa hal ga cocok. Contohnya mau nampilkan fasilitas atau fitur, kalo aku dulu mau nampilin fasilitas hotel. kalo ada pas hotel yg fasilitasny ada 100 lebih mau di tampilkan memanjang ke bawah wah ga asik, kudu scroll ke bawah dan mengabiskan space layar :).


OK udah aja ceritanya, nah akhirnya buat script ini yg gunanya bisa menampilkan data ke kanan/column based. Biasanya kalo ngambil data dari table database di tampilkan kolom ke baris nah ini kebalikannya dari baris ke kolom, gitu. Moga2 udah ngeh maksudku :)


Data yg di terima dalam format array, ntar di loop sesuai dengan jumlah data dan di print sesuai jumlah kolom yg diinginkan. Gitu aja, simple :)


<?php


class Dcolumn{

    var $arr_data; //array of data

    var $ncolumn;// number of column

    var $ndata;// number of totals data

    var $max_column = 10; // max column

    

    function Dcolumn(){

        $this->arr_data = array();

        $this->ncolumn = 1;

        $this->ndata = 0;

        $this->max_column;

    }



    function setMaxColumn($max){

        if($max > 0)

            $this->max_column = (int) $max;

    }



    function setData($dt= array(), $ncolumn = 1, $key=""){

        $this->arr_data = $dt;

        $this->ndata = count($this->arr_data);

        $this->setNcolumn($ncolumn);

        $this->proceed($key);

    }



    function setNcolumn($ncol){

        if($ncol > $this->max_column)

            $this->ncolumn = $this->max_column;

        else

            $this->ncolumn = (int) $ncol;

    }

    

    function showProperties(){

        echo "Data: " . $this->ndata . " | ";

        echo "Column: " . $this->ncolumn . " | ";

        echo "max column : " . $this->max_column;

    }

    function proceed($key){

         $mod_result = $this->ndata % $this->ncolumn; //modulus

         if ($mod_result == 0)

            $num_eachcol = $this->ndata / $this->ncolumn;

         else

            $num_eachcol = ceil($this->ndata / $this->ncolumn)-1;



          echo "<table border=1><tr>";

              $endloop = 0;

              for($i = 0; $i < $this->ncolumn; $i++){ // start

                   if($mod_result > 0){

                     $num_row = $num_eachcol + 1;

                     $beginloop = $i * $num_row;

                     $endloop = $num_row * ( $i + 1 );

                   } else{

                     $beginloop = $endloop;

                     $endloop = ( $num_eachcol * ( $i + 1 )) + ( $this->ndata % $this->ncolumn );

                   }

                  $mod_result--;//decrease modulus



                  // print per column

                  echo "<td>";

                        for($x = $beginloop; $x < $endloop; $x++){

                             if(is_array($this->arr_data[$x]) && !empty($key))

                                echo ($x + 1) . ". ". $this->arr_data[$x][$key];

                             else

                                echo ($x + 1) . ". ". $this->arr_data[$x];

                             echo "<br />";// break

                        }

                  echo "</td>";

              }

          echo "</tr></table>";

    }

}// class



?>


Penggunaanny cukup mudah, $dcolumn = new Dcolumn(); // buat instance $dcolumn->setData($arr_data, 5)// set_data(array_data, jumlah kolom) gt aja..


download script+contoh di sini Dcolumn v.1.1


lihat hasilnya di sini




[Liq] | 2007-05-30 22:07:00 | dibaca: 2291 kali | ditanggapi: 6 kali 



6 Comment
# 1.  dekill | 2007-06-26 16:48:40   

woo..keren..keren
hidup bang ali !!!

# 2.  Liq | 2007-06-27 22:19:58  

Wah Bang dekil TAny udah selesai neh, udah beredar lagi :)

Maap bang, Classny nggak se-ekstreem ala Bang Dekill..
Kelamaan kalo pake Standart :)

# 3.  Randi | 2007-07-16 11:35:01  

baru liat ada yang kyk begini, sebelum belum pernah kepikiran.. gw praktekin ah..

# 4.  AnonymouS | 2007-07-16 22:30:30  

He..he pas perlu kok, jd mau g mau buat

# 5.  moest | 2007-11-06 15:19:51  

sory nyela....
boleh nanya kan?
gini saya akan membuat aplikasi pada
HP,nah data yang da pada aplikasi tadi setiap 3 bulan ada updatenya...
nah ingin saya setiap 3 bulan sekali secara otomatis aplikasi akan mendownload aplikasi updatenya yang sebelumnya telah saya taruh pada websitenya.... nah script buat automatic update tu gimana ya..... makasih banget...
Contact me...
dj_ririn@yahoo.com

# 6.  LiQ | 2007-11-08 19:12:25  

yg sy tangkap, mekanisme automatic update yaitu:
1. Pada saat HP nyala, maka ada fitur untuk cek di website.
2. bandingkan versi terinstall dengan yg ada pd versi d Web.
3. Klo di Web lebih baru, baru Download Updatenya..

Berarti script untuk update bukan d webnya, tp d Hapeny :).
Di Web cuma kasih aja interface/APIny untuk melihat versi terbaru.
PAke XML aja lebih simple.

Moga2 itu yg d maksud..



Quick comment
 Name
 Email (protected)
 Web site
 FcECB   [Red Code]
    


Website ini disusun dengan Editplus
2005-2007 deepforest™