Showing posts with label coding. Show all posts
Showing posts with label coding. Show all posts

Generating document using TCPDF

Posted by : Linda Hermawati di 1:17 AM 0 Comments
TCPDF adalah sebuah software open source yang di gunakan untuk generate dokumen ke dalam bentuk PDF dari PHP. yang gw tau, TCPDF ini tersedia untuk PHP4 dan PHP5. well, g terlalu sulit jg bikin nya, karena dibantu dengan dokumentasi yang lengkap kap kap. selain bisa menggunakan cell, tcpdf juga mendukung converting dari HTML, dengan catatan, harus TELITI, jika kurang tutup aja, dia g akan muncul, alias blank





// yang wajib di include
require_once('../config/lang/eng.php');
require_once('../tcpdf.php');

/************************** memulai membuat dokumen pdf *****************************/
// kita mulai bahas satu persatu
// PDF_PAGE_ORIENTATION => adalah orientasi kertas yang dipilih, jika ditulis "PDF_PAGE_ORIENTATION" ini defaultnya, kertas nya jadinya akan portrait (berdiri). bisa juga dalam bentuk inisialisasi huruf : 'L' -> landscape dan 'P' -> untuk portrait
// PDF_UNIT => satuan pengukur. nilainya dapat berupa : 'mm' =>milimeter , 'cm' => centimeter, 'in' => inchi dan 'pt'=> point. default nya adalah 'mm'
//PDF_PAGE_FORMAT => adalah jenis kertas yang digunakan, dari letter, legal, A4 dan lain2
//true => maksudnya adalah text yang akan di generate ke dalam bentuk PDF ini adalah UNICODE (true => benar)
//UTF-8 => encoding , default : UTF-8
// false => discache (default false) => jika kondisi true maka akan mengurangi penggunaan memori RAM oleh caching data sementara filesystem (lebih lambat).
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
/************************** End Of memulai membuat dokumen pdf **************************/



/******************************* Setting Informasi Dokumen ***********************************/
// digunakan untuk mendefinisikan pembuat dokumen
$pdf->SetCreator('TCPDF TEST BY NDA'); // si pembuat dokumen
$pdf->SetAuthor('Linda Hermawati'); // author
$pdf->SetTitle('Terestestestestes by nda'); // definisikan judul dokumen
$pdf->SetSubject('Contoh simple penggunaan TCPDF'); // definisikan subject dokumen
$pdf->SetKeywords('TCPDF, PDF, example, test, guide'); // mengasosiasikan keyword, contoh keyword1, keyword2, dst dst
/****************************** End Of Setting Informasi Dokumen ************************/


/******************************* Set Data Header ****************************************/
//PDF_HEADER_LOGO => logo untuk header , jika diberi default "PDF_HEADER_LOGO" , mka logo yang muncul ada logo TCPDF
//PDF_HEADER_LOGO_WIDTH => panjang logo dengan satuan 'mm' (milimeter)
//PDF_HEADER_TITLE => setting judul dari header dokumen
//PDF_HEADER_STRING => string untuk dokumen header
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, 'Add Test TCPDF by Nda', 'ini nda lho...ini nda...');
/*************************** End Of Set Data Header **********************************/


/********************* Setting Font untuk Header dan Footer *******************************/
// PDF_FONT_NAME_MAIN => jenis font nya
// PDF_FONT_SIZE_MAIN => ukuran huruf
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
/************************* End Of Setting Font untuk Header dan Footer ***********************/


// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);


/******************************** Setting Margin *******************************/
//PDF_MARGIN_LEFT => margin kiri (satuan mm)
//DF_MARGIN_TOP => margin atas (satuan mm)
// PDF_MARGIN_RIGHT => margin kanan (satuan mm)
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER); // setting margin header
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER); // setting margin footer
/****************************** End Of Setting Margin **************************************/


/***************************** Setting Auto Page Break **********************************/
//Mengaktifkan atau menonaktifkan modus memecah halaman otomatis. Bila true, parameter kedua adalah jarak dari bagian bawah halaman. Secara standar, modus dan margin adalah 2 cm.
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
/******************************** End Of Setting Auto Page Break ***************************/



/***************************** Menentukan Jenis dan ukuran Huruf **************************/
// timses => jenis huruf
//BI => style nya, default untuk Bold dan Italic, ada juga : U untuk garis bawah dan D
// 16 => adalah ukuran huruf satuan nya adalah point
$pdf->SetFont('times', 'BI', 16);
/********************** End Of Menentukan Jenis dan ukuran Huruf *****************************/


/***************************** Menambah Halaman Baru *******************************/
//Menambahkan halaman baru pada dokumen. Jika halaman yang sudah ada, yang Footer () Metode ini dipanggil pertama untuk keluaran footer (jika diaktifkan). Kemudian halaman yang ditambahkan, posisi saat ini diset ke sudut kiri atas sesuai dengan margin kiri dan atas (atau bagian kanan jika dalam modus RTL), dan Header () dipanggil untuk menampilkan header (jika diaktifkan).
$pdf->AddPage();
/************************************ End Of Menambah Halaman Baru *************************/



/****************************** Ni dia bagian "BODY" nya *************************************/

// print a line using Cell()
/*
penjelasan :
param 1 :
0 => lebar dari cell tersebut, jika diberi nilai 0 maka akan memanjang sampai dengan margin kanan
12=> tinggi dari cell tersebut
'Add Test By nda menggunakan cell' => data yang akan ditampilkan
1 => garis tepi default : 0 untuk tanpa garis tepi, 1 untuk memberkan bingkai (garis tepi) pada cell
1 => Menunjukkan di mana posisi saat ini harus pergi setelah panggilan .
C => text align. default : C untuk center (rata tengah), L untuk left (rata Kiri), R untuk right (rata kanan) dan J untuk Justify (rata kanan kiri)

*/
$pdf->Cell(0, 12, 'Add Test By nda menggunakan cell', 1, 1, 'C');


//baris baru
$pdf->Ln();
/****************************************Generate dari bahasa HTML***************************/

$html = '

Justnda

';

/*
dukungan untuk men-generate beberapa format HTML (dukungan terbatas).
parameternya berupa :
- $html : string html yang akan di generate
- true : jika bernilai "true", maka akan ada baris baru setelah text
- 0 : Menunjukkan jika latar belakang harus dicat (true) atau transparan (false).
- true : jika bernilai "true" maka reset tinggi cell terakhir
- 0 : jika benar menambahkan cMargin default ruang untuk masing-masing write (default false).
- C : text align. default : C untuk rata tengah, R untuk rata Kanan, L untuk rata Kiri dan J untuk rata Kanan dan kiri

*/
$pdf->writeHTML($html, true, 0, true, 0,'C');



/************************** menggunakan multicell ******************************************/
/* membuat gaya / style untuk garis border
parameter :
- width : menentukan ketebalan garis
- cap : Type of cap to put on the line. Possible values are: butt, round, square. The difference between "square" and "butt" is that "square" projects a flat end past the end of the line.
- join : Type of join. Possible values are: miter, round, bevel.
- dash : pola strip (-). jika di isi 0, maka tidak ada jarak antara (-) satu dengan lainnya, jadi terlihat seperti garis biasa, tapi jika diisi 1 atau 2, maka akan ada jarak antara (-) satu dengan yang lainnya (make sure, please try :) )
- color : menentukan warna garis (dalam bentuk rgb)
*/
$pdf->SetLineStyle(array('width' => 0.3, 'cap' => 'round', 'join' => 'miter', 'dash' => 2, 'color' => array(0, 0, 0)));
/*
menentukan warna isi cell (dalam bentuk rgb)
*/
$pdf->SetFillColor(125,250,111);
/*
menentukan warna text
*/
$pdf->SetTextColor(255,255,0);
/*
Metode ini memungkinkan pencetakan teks dengan jeda baris.
parameternya :
- 80 :lebar dari cell tersebut, jika diberi nilai 0 maka akan memanjang sampai dengan margin kanan
- 0.3 : tinggi minimal cell
- 'Nda Pake Multicell' : text yang akan ditampilkan
- BT : Garis Tepi : B untuk bottom (bawah), T untuk Top (atas), L untuk left (kiri) dan R untuk right (kanan)
- C : text align . default : C untuk rata tengah, L untuk rata kiri, R untuk rata Kanan dan J untuk rata Kanan dan Kiri
- 1 : Menunjukkan jika latar belakang sel harus dicat (1) atau transparan (0). Nilai default: 0.
*/
$pdf->MultiCell(80, 0.3, 'Nda Pake Multicell', 'BT', 'C', 1);



/***************************** End Of Ni dia bagian "BODY" nya *****************************/



/********************************** Final Step, men-generate **************************/
//Kirim dokumen ke tujuan tertentu: string, file lokal atau browser.
// sampleNda.pdf => nama filenya
//I => ini adalah output yang dihasilkan, mau berupa apa, bagaimana, dengan pilihan sebagai berikut :
/* * I: inline mengirim file ke browser (default). Plug-in ini digunakan jika tersedia. Nama yang diberikan oleh Nama ini digunakan ketika seseorang memilih "Save as" pada link pilihan menghasilkan PDF.
* D: kirim ke gaya browser dan men-download file dengan nama yang diberikan nama.
* F: simpan ke file lokal dengan nama yang diberikan nama.
* S: mengembalikan dokumen sebagai string. nama ini diabaikan.
*/
$pdf->Output('sampleNda.pdf', 'I');

/******************************* End OF Final Step ****************************/

?>

javascript modify page setup firefox browser

Posted by : Linda Hermawati di 8:38 PM 0 Comments
wew...senang nya hatiku....
hehehehe.. ceritanya gini, gw lagi bikin aplikasi webbase untuk laporan, requirement na jika dia diload, maka langsung print, dengan margin yagn di atur dari script (php) dan tanpa title, secara tiap browser default na itu ada title na..
setelah gw nanya2 om gugel, dapet juga, dan langsugn jalan...
cihuy banged g c... thx om gugel


langkah2 nya antara lain :
1. download dulu add on na di sini
2, nah kalu udah, sekarang setting js di script na.
taro dia di template laporan na begini scriptna




well, save and tara.....hasil na sesuai dengan yang diingin kan...
thx banged ya firefox... go go opensource.....



artikel ini full dapet dari situs ini

alter table di postgres nambahin foreign key

Posted by : Linda Hermawati di 8:00 PM 0 Comments
hm...dasar emang faktor umur kali ye...baru jum'at dipake, senen udah lupa, walhasil browsing2 lagi, dari pada cape browsing mulu, akhir na gw berinisiatif buat naro di blog gw, yah... lumayan, kalu butuh tinggal masuk ke blog gw d... moga bermanfaat...

kasus na gini : table udah dibuat misalkan tabel pegawai isinya :
pegawai
-------
id
nama
id_agama
alamat

nah, ternyata id_agama itu foreign key ke table agama yang field na :
agama
-------
id
keterangan


secara pas buat tabel pegawai tabel agama belum dibuat,nah buat alterna gimana ya, biar dia ada relasi ke tabel agama???? ni dia query na :


alter table pegawai add foreign key (id_agama) references agama(id)

sumber dari diskusiweb.com (thx a lot yaw......)

konfigurasi SiteManager menggunakan lampp

Posted by : Linda Hermawati di 11:52 PM 0 Comments
1. ganti versi php dari php 5 menjadi php 4

# /opt/lampp/lampp/ php4
2. ekstrak sm di htdocs
3. pindahkan folder skeletonSite yang ada di hasil ekstrakan ke direktori /htdocs
4. pindahkan hasil ekstrakan (direktori siteManager) ke dalam folder skeletonSite
5. Masuk Direktori skeletonSite/siteManager
6. edit file siteManager.inc dengan mengubah pada variable $SM_rootDir seperti dibawah ini :
$SM_rootDir = '/opt/lampp/htdocs/skeletonSite/siteManager/';
7. save
8. masuk direktori config dan edit file globalconfig.xsm, pada bagian VAR name="smRoot" , menjadi seperti dibawah ini :

9. keluar dari direktori config dan site manager
10. setelah berada di direktori skeletonSite, masuk ke direktori admin, common.inc, pada bagian require (yang bagian else (unix)), diubah menjadi :
require(dirname(__FILE__)."../../siteManager/siteManager.inc");
11. masih pada file common.inc, variable $adminDir nya diganti menjadi :
$adminDir = dirname(__FILE__)."/";

12. setelah di save, lakukan test dengan menuliskan di browser
http://localhost/skeletonSite

Lammp : Fatal error: Allowed memory size

Posted by : Linda Hermawati di 2:13 AM 0 Comments
Fuih....Deadline niy.....dari pagi ngotak atik joomla, ada beberapa yang musti di edit tampilannya.. pas lagi nambah menu tiba2 error, begini bunyinya :

Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 77824 bytes) in /opt/lampp/htdocs/j/administrator/modules/mod_fullmenu.php on line 179

seteleh googling dan tanya2 teman begini lah solusi nya (ini untuk lammp di linux ya.....dan dengan catatan instalnya di /opt)

- buka file php.ini yang terletak di /opt/lampp/etc/php.ini
- trus cari kata memory_limit
- nah itu defaultnya kalu g salah 8M, coba diperbesar, misal jadi 16M.
- trus lammp nya di restart dech with command : # /opt/lammp/lammp/restart

actually di windows atau di linux (baik di direktori apa pun) inti nya sama, cari file php.ini dan edit di bagian limit_memory nya.

moga bermanfaat.......

Bikin Contekan ah..........(Situs2 buat joomla)

Posted by : Linda Hermawati di 12:23 AM 0 Comments
dapet kerjaan dari kantor, build website with joomla...........
hahaha...... secara gw newbie banged, (pernah c megang joomla, cuma sumpah, lupa, udah gitu kan kemaren2 cuma maen2 doang, he3..........).actually gw disuruh bikin sendiri, no partner, in fact, gw dibantuin banyak orang, he3..... thanks ka ari (xrokstar) yang master banged joomlanya, thanks agung juga yang dah bantuin, gw gabisa apa2 tanpa kalian (alah..........lebay banged ya :p)

niy....... gw bikin contekan biar kalu ada kasus kaya gni gak musti tanya2 lagi ni dia situs2 andalan gw selama ngerjain proyek ini :

www.id-joomla.com

tempat nya orang2 indonesia posting masalah seputar joomla, nah disini kita bisa nanya2 diforum seputar masalah joomla (bukan jomblo loh, he3......)

http://www.swmenupro.com

kalu ini situs untuk download swmenu free (componen joomla buat bikin dropdown menu, red)
joomla.lt
ini tempat gw download template
www.bestofjoomla.com
tempat download tempplate, fireboard (componen joomla buat bikin forum, red)
www.joomlapolis.com
www.extensions.joomla.org
disini lengkap banged niy........... dari component, module, coba aja.........


banyak banged, tapi gw lupa, kemaren gak sempet di catet c, he3.........
moga berguna.........