Ruang Web Hosting Indonesia - Solusi Handal, Cepat dan Murah

Posts Tagged ‘php’

Compile PHP di SUSE 9

September 3, 2008 - 6:27 am No Comments

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

Setting Roc@t-Remote Catalogue (Apache, Oracle InstantClient, PHP di RHEL5)

August 19, 2008 - 12:45 pm No Comments

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 :

  1. Web Server (Apache)

  2. Oracle Database atau InstantClient jika database Oraclenya terpisah

  3. 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 :)

php code : generate excel using mysql and php

April 10, 2007 - 3:54 am 2 Comments

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>”;
?>

clip_4.png

php code : generate pdf using mysql and php

April 4, 2007 - 10:09 am No Comments

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

clip.png