Rabu, 20 Juli 2011

Menggunakan Dompdf di Code Igniter

Pada kali ini saya akan berbagi hasil code yang saya gunakan untuk mengenerate file pdf secara otomatis menggunakan php. Sebenarnya banyak sekali library yang dapat digunakan untuk mengenerate file berbentuk pdf seperti Fpdf,Tcpdf,dan Dompdf sendiri. Saya pun mencoba satu persatu,dan jatuh pilihan pada dompdf,karena menurut saya ini library yang sangat simple, karena mengenerate halaman HTML langsung ke PDF, jadi kita tinggal membuat halaman HTML biasa dan secara otomatis akan digenerate ke pdf oleh dompdf.
Okee... langsung saja
1. Pertama download dahulu Dompdf disini
2. Pada kasus ini saya menggunakan CI 2.0. karena pada CI 2.0 folder plugins sudah dihilangkan maka taruh file  hasil download an tadi ke folder helper.
3. Kemudian buat script di bawah ini sebagai pemanggil dompdf yang terkoneksi framework CI. berikan nama to_pdf_helper *karena di ci ditaruh di helper maka gunakan _helper setelah nama file. dan ingat tidak ada tag penutup php("?>") dicode ini.
load_html($html);
 $dompdf->set_paper("A4");
    $dompdf->render();
    if ($stream) {
        $dompdf->stream($filename.".pdf");
    } else {
        $CI =& get_instance();
        $CI->load->helper('file');
        write_file("./uploads/$filename.pdf", $dompdf->output());
    }
}
4. Kemudia buat fungsi pdf yang digunakan untuk memanggil view dari halaman html yang akan kita generate dan memanggil fungsi dompdf itu sendiri.
function pdf()
 {
     $this->load->helper('to_pdf');  
     $data =array('nip'=>$this->input->post('nip'), 'nama'=>$this->input->post('nama'),
     'email'=>$this->input->post('email'),'tempat_lahir'=>$this->input->post('tempat_lahir'),
     'tgl_lahir'=>$this->input->post('tgl_lahir'),'jabatan'=>$this->input->post('jabatan')
     );
 $html = $this->load->view('cetak', $data, true);
        pdf_create($html,$data['nip']);
   } 



#sedikit penjelasan code di atas bahwa pertama yang harus dilakukan adalah mengeload helper to_pdf yang sebelumnya kita buat dengan sintaks $this->load->helper('to_pdf').
#Kemudian kita masukan variabel yang akan dibutuhkan pada halaman html yang akan digenerate, pada contoh diatas saya menggunakan array dengan nama $data.
#pada sintaks $html=$this->load->view('cetak',$data, true); maksud dari sintaks disamping adalah kita memanggil view dengan nama cetak.php dan mengirimkan variabel $data yang digunakan untuk mengisi variabel pada halaman cetak.php dan dimasukan pada variabel $html.
#pdf_create($html,$dara['nip']); sintaks disamping berfungsi untuk mengenerate file dari $html,dengan nama nip(pegawai).pdf. karena saya ingin membuat nama file sesuai dengan nip pegawai.

semoga sharing code diatas bermanfaat.

Selasa, 19 Juli 2011

Combo Box Dinamis di JAVA

Combo Box dinamis di JAVA,,yah problem ini yang sudah membuat saya tiga jam di depan laptop kesayangan sejak bangun tidur pagi hari tadi. Pada kasus ini saya bermaksud untuk menampilkan list value combo box yang diambil langsung dari database MySQL. Kalau di php mungkin ini bukanlah hal yang sulit, tetapi setelah saya coba di java ternyata bisa dibilang sangat rumit sekali kalo ingin memebuat combo box dinamis yang langsung diambil dari database.
okee langsung saja  disini saya  menggunakan IDE NetBeans.
1. Langkah pertama saya membuat class Database yang digunakan untuk melakukan query ke database MySQL.
public class Database {


private String dbuser="root";
private String dbpass="";
private String url="jdbc:mysql://localhost/pt_inti11";
private String driver="org.gjt.mm.mysql.Driver";
private Statement stm=null;
private Connection con=null;
private ResultSet rs=null;
public Database() throws Exception{
    Class.forName(driver);
    con=DriverManager.getConnection(url,dbuser,dbpass);
    stm=con.createStatement();
}
public ResultSet GetData(String SQLString)throws Exception{
     rs=stm.executeQuery(SQLString);
     return rs;
}
public void Query(String SQLString)throws Exception{
    stm.executeUpdate(SQLString);
}
}
2. Kemudian kita buat Class TypeEntry, class ini digunakan sebagai class buffer sebelum nanti dimasukan pada combo box.
public class TypeEntry {
    private int  value;
    private String label;

    public TypeEntry(int id,String label){
        this.value= id;
        this.label = label;
    }

    public int getValue(){
        return this.value;

    }

    public String getLabel(){
        return this.label;
    }

}

3. Langkah yang ketiga kita edit combo box nya supaya menghasilkan value list yang dinamin. caranya klik kanan pada combo box kemudian pilih customize code. kemudian masukkan codingan berikut ini pada halaman tersebut.
jComboBox1 = new javax.swing.JComboBox();
jComboBox1.removeAllItems();
try {
Database data = new Database();
String q ="select id_permohonan,permohonan from permohonan"; 
ResultSet rs = data.GetData(q);
while (rs.next()){
 jComboBox1.addItem(new TypeEntry(rs.getInt(1),rs.getString(2).trim()).getLabel()); 

}
}
catch(Exception ex) {

}

Bisa dilihat pada code diatas bahwa di dalam customize code combo box akan dilakukan proses query ke database kemudian akan ditambilkan label yang saya inginkan. di codingan di atas juga terdapat proses pembentukan objek dari class TypeEntry dari class yang sudah saya buat sebelumnya, hal ini dikarenakan pada addItem hanya bisa menambahkan type Objek makanya kegunaan dari file TypeEntry tadi digunakan sebagai buffer untuk membentuk objek terlebih dahulu.

Mungkin ini dahulu code yang dapat saya share hari ini, yang sudah membuat kepala pusing tiga jam karena sering menemukan error-error.
Semoga bermanfaat....

Jumat, 25 Maret 2011

kesalahan manusia dalam memaknai hidup

WM: GOD aku ingin bicara.., punya waktu sedikit buat aku?

G: Ooo..waktuKU adlh KEKEKALAN.., tdk ada masalah ttg Waktu... Apa pertanyaanmu?

WM: Tks.. Apa yg paling mengherankan bagiMU tentang kami manusia?

GOD: Hahaha.. kalian itu makhluk yg aneh.
Ke1:, suka mencemaskan masa Depan.., sampai lupa hari ini...
Ke2:, kalian hidup seolah olah tidak bakal mati...
Ke3:, kalian cepat bosan sebagai anak2.. dan tburu-buru ingin dewasa... Namun stlh dewasa.. rindu lagi jadi anak2... : suka btengkar.., ngambek.., dan ribut krn soal2 sepele...
Lalu
Ke4:, kalian rela kehilangan kesehatan.. demi mengejar uang..., ttp mbayarnya kembali utk mngembalikan kesehatan itu...

Hal2 begitulah yg mbuat hidup kalian susah...

WM: Lantas apa nasihat TUHAN agar kami bisa hidup BAHAGIA ?

GOD: sebenarnya semua nasihat sudah pernah diberikan.., Inilah satu lagi keanehan kalian..,Suka Melupakan nasihatKU..!!. Baiklah KUulangi lagi.., beberapa yg terpenting
1. kalian harus sadar bahwa mengejar rejeki adalah sebuah kesalahan..., Yg seharusnya kalian lakukan ialah menata diri.. agar kalian layak Dikucuri rejeki.. jadi jangan mengejar rejeki.., tetapi biarlah rejeki yg mengejar kalian...

2. Ingat : "siapa" yg kalian miliki itu.. lebih berharga.. dari pada "apa" yg kalian punyai..., Perbanyaklah teman.., kurangi musuh...

3. Jgn bodoh dgn cemburu.. dan membandingkan yg dimiliki org lain..., Melainkan Bersyukurlah.. dgn apa yg sdh kalian terima... Khususnya, kenalilah talenta.. dan potensi.. yg kalian miliki.. lalu kembangkanlah itu sebaik2nya.., maka kalian akan mjadi manusia Unggul. Otomatis Rejeki yg akan mngejar kalian...

4. Ingat orang yg disebut Kaya.. bukanlah dia yg berhasil mngumpulkan yg paling banyak.., tetapi adalah dia yg paling "sdikit" mmerlukan.., shingga masih sanggup mberi kpd sesamanya... Ok?!!
Yg tpenting buat kamu pribadi yg sdg mbaca ini.., bisa mengerti.. n bertindaklah...
AKU janji Tidak Akan pernah Meninggalkanmu...

source: note teman fb

Minggu, 27 Februari 2011

Synaptics di slackware 13.0

Ketika anda menginstall linux slackware di notebook pasti anda akan menemukan kendala bahwa touchpad laptop anda tidak bisa digunakan. ini mungkin mengganggu sekali bagi anda yang sudah terbiasa menggunakan touchpad untuk beraktifitas menggunakan laptop anda, berikut ini saya berikan tahapan untuk menjalankan touchpad anda yaitu menggunakan Synaptics.

1. copy file synaptics 11-x11-synaptics.fdi yang terletak di /usr/share/hal/fdi/policy/10osvendor/ ke folder /etc/hal/fdi/policy

#cp /usr/share/hal/fdi/policy/10osvendor/11-x11-synaptics.fdi /etc/hal/fdi/policy

2. Sebelumnya pada file psmouse.conf yang berada pada direktori /etc/modprobe.d/psmouse.conf. berikan tanda comment pada baris berikut #options psmouse proto=imps *tanda comment=#

3. Edit file yang telah anda copy tadi

#nano /etc/hal/fdi/policy/11-x11-synaptics.fdi
tambahkan baris berikut


       <merge key="input.x11_options.SHMConfig" type="string">true</merge>
        <merge key="input.x11_options.TapButton1" type="string">1</merge>
        <merge key="input.x11_options.FastTaps" type="string">1</merge>


4. Setelah itu edit file xorg.conf yang terletak di /etc/X11/xorg.conf

#nano /etc/X11/xorg.conf

Section "InputDevice"
    Identifier     "Mouse0"
    Driver         "synaptics"
    Option         "Protocol" "auto-dev"
    Option         "Device" "/dev/input/mice"
    Option         "FastTaps" "1"
    Option         "TapButton1" "1"
   #Option         "ZAxisMapping" "4 5 6 7"
EndSection

5. Restart komputer anda
#shutdown -r now

Sabtu, 26 Februari 2011

XAMPP: Couldn't start MySQL!

Pernahkan anda mengalami kejadian error seperti ini, jadi saat anda menjalankan lampp anda pada linux kesayangan anda terlihat  bahwa "XAMPP: Couldn't start MySQL!"....
okeee jangan panik.
1.   ketikan perintah berikut pada terminal anda jangan lupa sebagai rot
       chown -hR root /opt/lampp
2.   kemudian berikan hak akses pada folder instalasi lamp ini
       chmod 777 -R /opt/lampp
3.   restart lampp anda
       /opt/lampp/lampp restart
4.   jika muncul perintah berikut
      "XAMPP: Starting Apache with SSL (and PHP5)...
       XAMPP: Starting MySQL...                      
       Warning: World-writable config file '/opt/lampp/etc/my.cnf' is ignored
       Warning: World-writable config file '/opt/lampp/etc/my.cnf' is ignored"

   
      maka lakukakan langkah berikutnya
5.   ini hanyalah masalah hak akses pada file my.cnf
      chmod 644 /opt/lampp/etc/my.cnf  *ternyata file ini tidak boleh di execute
6.   coba restart lampp anda
7.   jika anda terkena masalah lagi yaitu pada saat membuka phpmyadmin tertulis "Wrong permissions on configuration file, should not be world writable!" berarti ada file yang tidak mempunyai hak akses
8.   coba anda jalankan perintah ini
      chmod 705 /opt/lampp/phpmyadmin/config.inc.php
9.   coba masuk phpmyadmin kembali.
10. problem solved
     

Sabtu, 12 Februari 2011

Cara install lilo yang hilang

Lilo hilang??mungkin kedengaran hal yang aneh sekali, tetapi hal ini akan terjadi jika anda sebelumnya mempunyai 2 OS (misal windows dan linux). jika anda tiba-tiba harus memutuskan untuk install ulang windows  maka otomatis boot loader lilo anda yang terletak di MBR akan di timpa oleh windows. Hal ini bukan berarti linux kesayangan amda hilang tetapi hanya LILO atau boot loader nya saja yang tertimpa. lantas, apa yang harus segera dilakukan?? berikut proses yang saya lakukan untuk mengembalikan lilo saya.

1. Cari dvd/cd installer dari OS linux anda, jika tidak ada anda bisa menggunakan distro linux apapun. pada kali ini saya menggunakan knoppix 6

2. Lakukan proses booting lewat CD(biasanya otomatis), jika belum bisa lakukan setting di BIOS untuk menggantinya.

3. Setelah masuk tahapan installer,pilih shell mode.

4. Masuk sebagai root
# sudo su

5. Buat folder untuk menampung hasil dari mounting yg akan dilakukan.
# mkdir /mnt/jajal

6. Lakukan proses mount dan dimasukkan ke dalam folder yang dibuat tadi(point 5)        
#mount -t ext4 /dev/sda10 /mnt/jajal  * proses ini untuk melakukan mount dan dimasukan kedalam folder jajal.

7. lakukan chroot pada folder tadi
# chroot /mnt/jajal

8. Lakukan proses editing pada file lilo.conf anda
#nano /etc/lilo/conf

9. Save editan anda dan lakukan instalasi dengan sintaks
#/sbin/lilo

10. Reboot komputer anda, maka lilo yang hilang telah muncul kembali

Selasa, 08 Februari 2011

Peringkat Perguruan Tinggi Indonesia 2011

       Berikut ini adalah daftar Peringkat Perguruan Tinggi di Indonesia Januari tahun 2011 versi webometrics.
Sebelumnya harap diketahui bahwa webometrics adalah lembaga yang berafiliasi dengan Dewan Riset Nasional Spanyol untuk mengeluarkan daftar peringkat/rangking perguruan tiggi di dunia setiap 6 bulan sekali,yakni pada bulan januari dan bulan Juli. kemudian dapat dikatakan bahwa webometrics memang mengkhususkan penilainnya berdasarkan website dari masing-masing perguruan tinggi yang ada di seluruh dunia. Untuk lebih jelasnya ada 4 penilaian dari website tiap institusi yang akan dijadikan indikator penilaian sebuah perguruan tinggi.
1. Visibility (V): Jumlah total tautan eksternal yang unik yang diterima dari situs lain (inlink), yang diperoleh dari Yahoo Search, Live Search dan Exalead. Jadi intinya seberapa banyak website/blog yang memasang link ke situs universitas tsb, makin banyak website/blog yang memasang tautan ke situs universitas tsb maka visibility situs universitas tersebut akan tinggi.

2. Size (S): Jumlah halaman yang ditemukan dari empat mesin pencari: Google, Yahoo, Live Search dan Exalead.

3. Rich Files (R): Volume file yang ada di situs Universitas dimana format file yang dinilai layak masuk di penilaian (berdasarkan uji relevansi dengan aktivitas akademis dan publikasi) adalah: Adobe Acrobat (.pdf), Adobe PostScript (.ps), Microsoft Word (.doc) dan Microsoft Powerpoint (.ppt). Data-data ini diambil menggunakan Google dan digabungkan hasil-hasilnya untuk setiap jenis berkas.

4. Scholar (Sc): Google Scholar menyediakan sejumlah tulisan-tulisan ilmiah (scientific paper) dan kutipan-kutipan (citation) dalam dunia akademik. Biasanya pada file-file yang terdapat di perpustakaan digital suatu universitas maupun jurnal-jurnal online yg diasuhnya.

Daftar peringkat Perguruan Tinggi di Indonesia
                  Universitas                                                  Peringkat Dunia
1. UGM ( Universitas Gadjah Mada )                                  583
2. UI ( Universitas Indonesia )                                             599
3. ITB ( Institut Teknologi Bandung )                                   770
4. Universitas Airlangga                                                      1000
5. Universitas Diponegoro                                                  1004
6. Universitas Petra Christian                                              1007                                            
7. Universitas Gunadarma                                                   1010
8. Universitas Andalas                                                        1015
9. ITS (Institut Teknologi Sepuluh November)                    1017
10. Universitas Negeri Malang                                            1018
11. Universitas Sriwijaya                                                    1026
12. Universitas Muhamadiyah Surakarta                             1041
13. Universitas Sumatera Utara                                          1056
14. Institut Pertanian Bogor                                                1204
15. Universitas Islam Indonesia                                          1217 

Popular Posts

Pages

Followers

Featured Posts