Compile PHP 5.x dengan Apache2 pada SuSE Professional 9.1/9.2
SUSE menggunakan konfigurasi Apache yang disimpan di /etc/apache2/. Ketika Anda configure PHP 5.X dengan:
$ ./configure –with-apxs2=/usr/sbin/apxs2
$ make
semua berjalan lancar; tetapi ketika Anda menjalankan :
$ make install
Konfigurasi file layout Apache yang tidak biasa membingungkan bagian install-sapi dari Makefile dan proses berhenti dengan error :
apxs:Error: Config file /etc/apache2/httpd2-prefork.conf not found.
make: *** [install-sapi] Error 1
Pada titik ini, hanya library PHP SAPI telah di copy pada tempatnya; file lainnya (seperti script PEAR, PHP-CLI, dll) belum diinstall. Tetapi jangan khawatir! Anda dapat menyelesaikan permasalahan dengan :
1. Edit Makefile dan ubah baris dibawah ini, hapus kata “install-sapi”:
install_targets = install-sapi install-cli install-pear install-build install-headers install-programs
menjadi
install_targets = install-cli install-pear install-build install-headers install-programs
2. Coba lagi dengan perintah make install :
$ make install
3. Ketik instruksi pada konfigurasi Apache. Sebagai root, buat file baru /etc/apache2/conf.d/php5.conf yang berisi file dibawah ini :
AddType application/x-httpd-php5 .php3 .php
Action application/x-httpd-php5 /cgi-bin/php
Share on Facebook
Apa sih itu Roc@t
ROC@T merupakan produk dari PT. Sigma Cipta Utama (http://scu.co.id) dibuat untuk membantu Anda dalam pengelolaan pencarian dan peminjaman pada lokasi penyimpanan data katalog di perusahaan Anda agar lebih efisien dalam pencarian, pendistribusian dan pemeliharaannya. Hal ini memungkinkan untuk membuat index dari data yang disimpan pada banyak unit penyimpanan asset menjadi katalog yang secara sentral dikelola dari data fisik yang didistribusikan. Aplikasi ini juga termasuk sistem pemesanan. Sistem pemesanan adalah fasilitas yang membantu pengguna untuk memesan beberapa item dari catatan yang ditunjukkan pada laporan
Apa aja sih yang dibutuhkan :
-
Web Server (Apache)
-
Oracle Database atau InstantClient jika database Oraclenya terpisah
-
PHP
Langkah Instalasi di sistem operasi RedHat Enterprise Linux 5
1. Compile Apache
Buka console/terminal untuk memulai installasi
Pindah ke direktori dimana file aplikasi disimpan
Ekstract file Apache dengan mengetikkan
tar -xvf httpd-[versi aplikasi].tar.gz
Pindah ke dalam folder aplikasi Apache dengan mengetikkan perintah
cd httpd-[versi aplikasi]/
Compile aplikasi dengan mengetikkan perintah
./configure –enable-so
make
make install
2. Install Oracle InstantClient
Buka console/terminal untuk memulai installasi
Pindah ke direktori dimana file aplikasi disimpan
Install aplikasi dengan mengetikkan perintah
rpm -ivh oracle-instantclient-basic-11.1.0.1-1.i386.rpm
PATH instantclient di : /usr/lib/oracle/11.1.0.1/client/
Set Environment Variables:
export LD_LIBRARY_PATH=/usr/lib/oracle/11.1.0.1/client/:$PATH
export ORACLE_HOME=/usr/lib/oracle/11.1.0.1/client/
export PATH=$ORACLE_HOME/bin:$PATH
tambah baris diatas ke /etc/rc.local sehingga variabel tetap efektif walaupun setelah reboot
3. Compile PHP
Buka console/terminal untuk memulai installasi
Pindah ke direktori dimana file aplikasi disimpan
Ekstract file PHP dengan mengetikkan
tar -xvf php-[versi aplikasi].tar.gz
Pindah ke dalam folder aplikasi PHP dengan mengetikkan perintah
cd php-[versi aplikasi]/
Compile aplikasi dengan mengetikkan perintah
./configure –with-apxs2=/usr/local/apache2/bin/apxs –enable-debug –with-zlib-dir=/usr/ local/lib –enable-dba –enable-dbase –with-regex –with-pear –with- oci8=instantclient,/usr/lib/oracle/11.1.0.1/client/lib/
make
make install
Jika Anda terhubung ke database Oracle Anda harus mendefinisikan service dalam file yang bernama tnsnames.ora. Buat file tnsnames.ora di direktori /etc/
Contoh tnsnames.ora :
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.1)(PORT = 1521))
)
(CONNECT_DATA =
(SID = ORCL)
(SERVER = DEDICATED)
)
)
Setting variabel TNS_ADMIN untuk mencari variabel tnsnames.ora :
export TNS_ADMIN=/etc/
dan tambah baris diatas pada /etc/rc.local
Done
Share on Facebook
just put the header in your php code
<?php
header(”Content-Type: application/vnd.ms-excel”);
header(”Expires: 0″);
header(”Cache-Control: must-revalidate, post-check=0, pre-check=0″);
header(”content-disposition: attachment;filename=form_k01.xls”);
// Make a MySQL Connection
mysql_connect(”172.27.1.245″, “root”, “”) or die(mysql_error());
mysql_select_db(”lp2tk”) or die(mysql_error());
// Get all the data from the “example” table
$result = mysql_query(”SELECT * FROM dat_k01_detail where id_dat=”.$_GET['id_dat'])
or die(mysql_error());
echo “<table border=’1′>”;
echo “<TR><TH rowspan=3>NO.</TH><TH rowspan=3>JABATAN PENGAWAS<BR> KETENAGAKERJAAN</TH><TH colspan=14>JUMLAH</TH><TH rowspan=3>KETERANGAN</TH></TR>
<TR><TH rowspan=2>UMUM</TH><TH colspan=11>SPESIALIS</TH><TH rowspan=2>PPNS</TH><TH rowspan=2>JUMLAH</TH></TR>
<TR><TH>1</TH><TH>2</TH><TH>3</TH><TH>4</TH><TH>5</TH><TH>6</TH><TH>7</TH><TH>8</TH><TH>9</TH><TH>10</TH><TH>11</TH></TR>”;
// keeps getting the next row until there are no more to get
while($row = mysql_fetch_array( $result )) {
// Print out the contents of each row into a table
echo “<tr><td>”;
echo $row['nomor'];
echo “</td><td>”;
echo $row['jabatan'];
echo “</td><td>”;
echo $row['umum'];
echo “</td><td>”;
echo $row['sp1'];
echo “</td><td>”;
echo $row['sp2'];
echo “</td><td>”;
echo $row['sp3'];
echo “</td><td>”;
echo $row['sp4'];
echo “</td><td>”;
echo $row['sp5'];
echo “</td><td>”;
echo $row['sp6'];
echo “</td><td>”;
echo $row['sp7'];
echo “</td><td>”;
echo $row['sp8'];
echo “</td><td>”;
echo $row['sp9'];
echo “</td><td>”;
echo $row['sp10'];
echo “</td><td>”;
echo $row['sp11'];
echo “</td><td>”;
echo $row['ppns'];
echo “</td><td>”;
echo $row['jumlah'];
echo “</td><td>”;
echo $row['keterangan'];
echo “</td></tr>”;
}
/*
$sum = mysql_query(”SELECT SUM(umum) AS sum_umum,SUM(sp1) AS sum_1,SUM(sp2) AS sum_2,SUM(sp3) AS sum_3,SUM(sp4) AS sum_4,SUM(sp5) AS sum_5,SUM(sp6) AS sum_6,SUM(sp7) AS sum_7,SUM(sp8) AS sum_8,SUM(sp9) AS sum_9,SUM(sp10) AS sum_10,SUM(sp11) AS sum_11,SUM(ppns) AS sum_ppns,SUM(jumlah) AS sum_jumlah FROM dat_k01_detail”);
while($row = mysql_fetch_array( $sum )) {
echo “<tr><td>”;
echo “”;
echo “</td><td>”;
echo “Jumlah”;
echo “</td><td>”;
echo $row['sum_umum'];
echo “</td><td>”;
echo $row['sum_1'];
echo “</td><td>”;
echo $row['sum_2'];
echo “</td><td>”;
echo $row['sum_3'];
echo “</td><td>”;
echo $row['sum_4'];
echo “</td><td>”;
echo $row['sum_5'];
echo “</td><td>”;
echo $row['sum_6'];
echo “</td><td>”;
echo $row['sum_7'];
echo “</td><td>”;
echo $row['sum_8'];
echo “</td><td>”;
echo $row['sum_9'];
echo “</td><td>”;
echo $row['sum_10'];
echo “</td><td>”;
echo $row['sum_11'];
echo “</td><td>”;
echo $row['sum_ppns'];
echo “</td><td>”;
echo $row['sum_jumlah'];
echo “</td><td>”;
echo “”;
echo “</td></tr>”;
}
*/
echo “</table>”;
?>

Share on Facebook
From http://www.ros.co.nz/pdf/
<?php
// test the table functions
error_reporting(E_ALL);
include(’class.ezpdf.php’);
$pdf =& new Cezpdf(’a4′,’portrait’);
$pdf->selectFont(’./fonts/Helvetica’);
$pdf->ezSetCmMargins(1.5,2,1.5,1.5);
$pdf->addText(370,790,8,”LAMPIRAN I : Keputusan Menteri Tenaga Kerja dan”,0);
$pdf->addText(422,780,8,”Transmigrasi Republik Indonesia”,0);
$pdf->addText(422,770,8,”Nomor : PER.09/MEN/V/2005″,0);
$pdf->addText(422,760,8,”Tanggal : 25-5-2005″,0);
$pdf->line(422,758,555,758);
$pdf->ezSetDy(-50, ‘makeSpace’);
$pdf->ezText(’DATA PEGAWAI PENGAWAS KETENAGAKERJAAN’,10, array(’justification’ => ‘center’));
//————————————————–
// you will have to change these to your settings
$host = ‘172.27.1.28′;
$user = ‘root’;
$password = ’server’;
$database = ‘lp2tk’;
$query = ’select * from dat_k01_detail’;
//————————————————–
// open the connection to the db server
$link = mysql_connect($host,$user,$password);
// change to the right database
mysql_select_db($database);
// initialize the array
$data = array();
// do the SQL query
$result = mysql_query($query);
// step through the result set, populating the array, note that this could also have been written:
// while($data[] = mysql_fetch_assoc($result)) {}
while($data[] = mysql_fetch_array($result, MYSQL_ASSOC)) {}
// make the table
$pdf->ezText(’Triwulan’, 8);
$pdf->ezText(’Tahun’, 8);
$pdf->ezText(’Kab/Kota’, 8);
$pdf->ezText(’Kode’, 8);
$pdf->addText(80,729,8,”:”,0);
$pdf->addText(80,719,8,”:”,0);
$pdf->addText(80,710,8,”:”,0);
$pdf->addText(80,701,8,”: K1″,0);
$pdf->ezSetDy(-10, ‘makeSpace’);
$pdf->ezTable($data,array(’nomor’=>’NO.’, ‘jabatan’=>’JABATAN PENGAWAS KETENAGAKERJAAN’, ‘umum’=>’UMUM’, ’sp1′=>’1′, ’sp2′=>’2′, ’sp3′=>’3′, ’sp4′=>’4′, ’sp5′=>’5′, ’sp6′=>’6′, ’sp7′=>’7′, ’sp8′=>’8′, ’sp9′=>’9′, ’sp10′=>’10′, ’sp11′=>’11′, ‘ppns’=>’PPNS’, ‘jumlah’=>’JUMLAH’, ‘keterangan’=>’KETERANGAN’)
,”, array(’innerLineThickness’ => 1,’outerLineThickness’ => 1.2,’showHeadings’=>1,’shaded’=>1,’showLines’=>1, ‘xPos’=>’center’ ,’xOrientation’=>’center’, ‘width’=>535));
$pdf->ezSetDy(-10, ‘makeSpace’);
$pdf->ezText(’<b>Keterangan Kolom Spesialis</b>
1 = Pesawat Uang Bejana Tekan
2 = Pesawat Angkat Angkut
3 = Pesawat Tenaga dan Produksi
4 = Instalasi Listrik, Lift
5 = Penanggulangan Kebakaran
6 = Konstruksi Bangunan
‘,8, array(’justification’ => ‘left’));
$pdf->addText(200,570,8,”7 = Kesehatan Kerja”,0);
$pdf->addText(200,561,8,”8 = Lingkungan Kerja”,0);
$pdf->addText(200,552,8,”9 = Jamsostek”,0);
$pdf->addText(200,543,8,”10 = Pengupahan dan Waktu Kerja”,0);
$pdf->addText(200,534,8,”11 = Keselamatan Kerja Kimia”,0);
$pdf->addText(395,570,8,”(Wilayah/Daerah, Tanggal, Bulan, Tahun)”,0);
$pdf->addText(375,561,8,”Kepala Instansi atau Kepala Unit Kerja Pengawasan”,0);
$pdf->addText(410,552,8,”Ketenagakerjaan Kabupaten/Kota”,0);
$pdf->addText(435,530,8,”(……………………….)”,0);
//$pdf->ezTable($data,$cols,”, array(’xPos’=>90,’xOrientation’=>’right’,'width’=>300 ,’cols’=>array(’nomor’=>array(’justification’=>’right’),’jabatan’=>array(’width’=>400))));
// do the output, this is my standard testing output code, adding ?d=1
// to the url puts the pdf code to the screen in raw form, good for checking
// for parse errors before you actually try to generate the pdf file.
if (isset($d) && $d){
$pdfcode = $pdf->output(1);
$pdfcode = str_replace(”\n”,”\n<br>”,htmlspecialchars($pdfcode));
echo ‘<html><body>’;
echo trim($pdfcode);
echo ‘</body></html>’;
} else {
$pdf->stream();
$pdf->ezStartPageNumbers(30,50,20,”,”,1);
$pdf->ezStopPageNumbers();
}
ezNewPage()
?>
ros.pdf

Share on Facebook