<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Komunitas Gubuk Open Source Bali &#187; PHP</title>
	<atom:link href="http://gubukopensource.org/category/programming/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://gubukopensource.org</link>
	<description>Komunitas Gubuk Open Source Bali tempat membahas aplikasi bebas dengan kode sumber terbuka seperti linux, php, mysql dan cms dalam Bahasa Indonesia</description>
	<lastBuildDate>Fri, 04 Dec 2009 07:18:46 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Thumbnail image JPEG seperti flickr dengan PHP</title>
		<link>http://gubukopensource.org/2008/01/17/thumbnail-image-jpeg-seperti-flickr-dengan-php/</link>
		<comments>http://gubukopensource.org/2008/01/17/thumbnail-image-jpeg-seperti-flickr-dengan-php/#comments</comments>
		<pubDate>Thu, 17 Jan 2008 02:08:02 +0000</pubDate>
		<dc:creator>bayu</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Thumbnail image JPEG seperti flickr dengan PHP]]></category>

		<guid isPermaLink="false">http://gubukopensource.org/2008/01/17/thumbnail-image-jpeg-seperti-flickr-dengan-php/</guid>
		<description><![CDATA[Artikel ini akan menjelaskan cara pembuatan thumbnail image yang proposional seperti
situs flickr. Thumbnail didapat dari hasil resize gambar yang sebenarnya, kemudian
mengambil bentuk tengahnya, dan diambil kembali sekian persen. Langkah-langkahnya
sebagai berikut :
Catatan * : Hanya untuk format gambar (JPG,JPEG)
1. Pastikan pustaka GD sudah diaktifkan agar PHP dapat mendukung 
pembuatan dan resize grafis secara on the fly.
 [...]]]></description>
			<content:encoded><![CDATA[<p>Artikel ini akan menjelaskan cara pembuatan thumbnail image yang proposional seperti</p>
<p>situs flickr. Thumbnail didapat dari hasil resize gambar yang sebenarnya, kemudian</p>
<p>mengambil bentuk tengahnya, dan diambil kembali sekian persen. Langkah-langkahnya</p>
<p>sebagai berikut :</p>
<p>Catatan * : Hanya untuk format gambar (JPG,JPEG)</p>
<p><strong>1. Pastikan pustaka GD sudah diaktifkan agar PHP dapat mendukung </strong></p>
<p><strong>pembuatan dan resize grafis secara on the fly.<br />
</strong> Caranya:<br />
- buka file configurasi php(php.ini) dengan text editor.<br />
- Cari ;extension=php_gd.dll<br />
- Hilangkan tanda ; sehingga menjadi extension=php_gd.dll</p>
<p><strong> 2. Buat folder &#8220;img&#8221; pada direktori htdocs(untuk web server Apache) atau </strong></p>
<p><strong>wwwroot(untuk web server IIS)</strong></p>
<p><strong> 3. Buat file php seperti di bawah ini dan simpan dengan nama </strong></p>
<p><strong>&#8220;create_thumb.php&#8221; di direktori yg sama dengan folder &#8220;img&#8221;</strong>:</p>
<p><code>&lt;?php</code></p>
<p>$vdir_upload = &#8216;img/&#8217;;<br />
$vfile_upload = $vdir_upload . $_FILES['img']['name'];<br />
if(!move_uploaded_file($_FILES['img']['tmp_name'], $vfile_upload))<br />
exit(&#8220;Upload Error&#8221;);<br />
else<br />
createThumbnail($vfile_upload);</p>
<p>function createThumbnail($file_name){<br />
header(&#8220;Content-type: image/jpeg&#8221;);</p>
<p>//identitas file asli<br />
$im_src = imagecreatefromjpeg($file_name);<br />
$src_width = imageSX($im_src);<br />
$src_height = imageSY($im_src);</p>
<p>//set ukuran gambar hasil perubahan<br />
$dst_width = 100;<br />
$dst_height = $dst_width;<br />
//set persentase gambar yg ingin diambil<br />
$prsn = 60;</p>
<p>//proses perubahan ukuran<br />
$im = imagecreatetruecolor($dst_width,$dst_height);<br />
if($src_width &gt; $src_height)<br />
imagecopyresampled($im,$im_src,0,0,round((($src_width-$src_height)/2)+</p>
<p>((((100-$prsn)/2)/100)*$src_height)),round((((100-$prsn)/2)/100)*$src_height),</p>
<p>$dst_width, $dst_height, ($prsn/100)*$src_height, ($prsn/100)*$src_height);<br />
else<br />
imagecopyresampled($im,$im_src,0,0,round((($src_height-$src_width)/2)+</p>
<p>((((100-$prsn)/2)/100)*$src_width)),round((((100-$prsn)/2)/100)*$src_width),</p>
<p>$dst_width, $dst_height, ($prsn/100)*$src_width, ($prsn/100)*$src_width);</p>
<p>//Simpan gambar<br />
imagejpeg($im,$file_name . &#8220;_thumb.jpg&#8221;);</p>
<p>imagedestroy($im_src);<br />
imagedestroy($im);<br />
}<br />
?&gt;<code></code></p>
<p><code></code> <strong>4. Buat file html seperti di bawah ini dan simpan dengan nama </strong></p>
<p><strong>&#8220;upload_img.html&#8221; di direktori yg sama dengan folder &#8220;img&#8221;:</strong></p>
<p><code>&lt;html&gt;<br />
&lt;head&gt;<br />
&lt;title&gt;Thumbnail&lt;/title&gt;<br />
&lt;/head&gt;</code></p>
<p>&lt;body&gt;<br />
&lt;form enctype=&#8221;multipart/form-data&#8221; action=&#8221;create_thumb.php&#8221; method=&#8221;post&#8221;&gt;<br />
Upload gambar :&lt;input name=&#8221;img&#8221; type=&#8221;file&#8221;&gt;<br />
&lt;input type=&#8221;submit&#8221; value=&#8221;Ok&#8221;&gt;<br />
&lt;/form&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br />
<strong>5. Coba upload sebuah gambar berformat JPEG dengan perintah tersebut. </strong></p>
<p><strong>Lihat pada direktori &#8220;img&#8221;, jika berhasil maka akan terbentuk 2 buah file </strong></p>
<p><strong>upload(1 gambar sebenarnya, 1 thumbnail).</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://gubukopensource.org/2008/01/17/thumbnail-image-jpeg-seperti-flickr-dengan-php/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Resize image JPEG dengan PHP</title>
		<link>http://gubukopensource.org/2007/11/28/resize-image-jpeg-dengan-php/</link>
		<comments>http://gubukopensource.org/2007/11/28/resize-image-jpeg-dengan-php/#comments</comments>
		<pubDate>Wed, 28 Nov 2007 00:15:47 +0000</pubDate>
		<dc:creator>bayu</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[resize image JPEG dengan php]]></category>

		<guid isPermaLink="false">http://gubukopensource.org/2007/11/28/resize-image-jpeg-dengan-php/</guid>
		<description><![CDATA[Artikel ini bertujuan untuk membuat sebuah gambar JPEG yang di-upload menjadi 3 bentuk(kecil, sedang, dan ukuran sebenarnya). Diharapkan dapat mengurangi beban load halaman website yang mempunyai list konten bergambar seperti e-commerce.
Catatan * : Hanya untuk format gambar (JPG,JPEG)
Menu upload gambar yang disediakan oleh website-website yang ada pada saat ini kebanyakan gambar yang di-upload di-copy secara [...]]]></description>
			<content:encoded><![CDATA[<p>Artikel ini bertujuan untuk membuat sebuah gambar JPEG yang di-upload menjadi 3 bentuk(kecil, sedang, dan ukuran sebenarnya). Diharapkan dapat mengurangi beban load halaman website yang mempunyai list konten bergambar seperti e-commerce.<br />
Catatan * : Hanya untuk format gambar (JPG,JPEG)</p>
<p>Menu upload gambar yang disediakan oleh website-website yang ada pada saat ini kebanyakan gambar yang di-upload di-copy secara langsung ke server. Jadi gambar yang dihasilkan hanya satu buah saja yaitu gambar yang di-upload. Padahal, pada kenyataannya website seperti e-commerce pada umumnya melakukan preview gambar sampai sebanyak tiga kali, yaitu:<br />
- Preview gambar untuk list semua konten dengan keterangan singkat<br />
- Preview gambar untuk keterangan detail<br />
- Preview gambar untuk ukuran sebenarnya(versi large)</p>
<p>Apabila gambar yang dimiliki hanya satu buah saja, jadi setiap preview tersebut memakai gambar yang sama, hanya saja di-resize oleh perintah html. Hal ini tentu saja membebani pengunjung website ketika membuka list konten yang seharusnya menggunakan gambar kecil, tetapi disuguhkan gambar dalam ukuran sebenarnya. Oleh sebab itu penulis mencoba menawarkan sebuah solusi untuk hal di atas. Ilustrasinya seperti berikut:<br />
- Pengelola web mengupload sebuah gambar JPEG (versi large)<br />
- Sistem mengupload gambar tersebut menjadi 3 versi : versi small(untuk preview semua list konten), versi medium(untuk preview keterangan detail), versi large(ukuran sebenarnya)</p>
<p>Jadi, setelah gambar diupload dan dibuat menjadi 3 bagian maka website akan menampilkan gambar dalam ukuran sebenarnya(bukan di-rezise oleh perintah html).</p>
<p>Langkah-langkah implementasi :</p>
<p><strong>1. Pastikan pustaka GD sudah diaktifkan agar PHP dapat mendukung pembuatan grafis secara on the fly.<br />
</strong> Caranya:<br />
- buka file configurasi php(php.ini) dengan text editor.<br />
- Cari ;extension=php_gd.dll<br />
- Hilangkan tanda ; sehingga menjadi extension=php_gd.dll<br />
<strong> 2. Buat folder &#8220;img&#8221; pada direktori htdocs(untuk web server Apache) atau wwwroot(untuk web server IIS)</strong><br />
<strong> 3. Buat file php seperti di bawah ini dan simpan dengan nama &#8220;upload_image.php&#8221; di direktori yg sama dengan folder &#8220;img&#8221;:</strong></p>
<p><code>&lt;?php</code><br />
<code>//Fungsi untuk meng-upload gambar</code><br />
<code>function UploadImage($img_name){</code><br />
<code>header("Content-type: image/jpeg");</code></p>
<p><code>//direktori gambar</code><br />
<code>$vdir_upload = "img/";</code><br />
<code>$vfile_upload = $vdir_upload . $img_name;</code></p>
<p><code>//Simpan gambar dalam ukuran sebenarnya</code><br />
<code>move_uploaded_file($_FILES["img"]["tmp_name"], $vfile_upload);</code></p>
<p><code>//identitas file asli</code><br />
<code>$im_src = imagecreatefromjpeg($vfile_upload);</code><br />
<code>$src_width = imageSX($im_src);</code><br />
<code>$src_height = imageSY($im_src);</code></p>
<p><code>//Simpan dalam versi small 110 pixel</code><br />
<code>//set ukuran gambar hasil perubahan</code><br />
<code>$dst_width = 110;</code><br />
<code>$dst_height = ($dst_width/$src_width)*$src_height;</code></p>
<p><code>//proses perubahan ukuran</code><br />
<code>$im = imagecreatetruecolor($dst_width,$dst_height);</code><br />
<code>imagecopyresampled($im, $im_src, 0, 0, 0, 0, $dst_width, $dst_height, $src_width, $src_height);</code></p>
<p><code>//Simpan gambar</code><br />
<code>imagejpeg($im,$vdir_upload . "small_" . $img_name);</code></p>
<p><code>//Simpan dalam versi medium 320 pixel</code><br />
<code>//set ukuran gambar hasil perubahan</code><br />
<code>$dst_width = 320;</code><br />
<code>$dst_height = ($dst_width/$src_width)*$src_height;</code></p>
<p><code>//proses perubahan ukuran</code><br />
<code>$im = imagecreatetruecolor($dst_width,$dst_height);</code><br />
<code>imagecopyresampled($im, $im_src, 0, 0, 0, 0, $dst_width, $dst_height, $src_width, $src_height);</code></p>
<p><code>//Simpan gambar</code><br />
<code>imagejpeg($im,$vdir_upload . "medium_" . $img_name);</code></p>
<p><code>imagedestroy($im_src);</code><br />
<code>imagedestroy($im);</code><br />
<code>}</code><br />
<code>//Upload Gambar</code><br />
<code>UploadImage($_FILES["img"]["name"]);</code><br />
<code>?&gt;</code></p>
<p><strong>4. Buat file html seperti di bawah ini dan simpan dengan nama &#8220;upload.html&#8221; di direktori yg sama dengan folder &#8220;img&#8221;:</strong></p>
<p><code>&lt;html&gt;</code><br />
<code>&lt;body&gt;</code><br />
<code>&lt;form method="post" action="upload_image.php" enctype="multipart/form-data"&gt;</code><br />
<code>Image (JPG/JPEG) &lt;input name="img" type="file"/&gt;&lt;/td&gt;</code><br />
<code>&lt;input name="submit" type="submit" value="Upload" /&gt;</code><br />
<code>&lt;/body&gt;</code><br />
<code>&lt;/html&gt;</code></p>
<p><strong>5. Coba upload sebuah gambar berformat JPEG dengan perintah tersebut.<br />
Lihat pada direktori &#8220;img&#8221;, jika berhasil maka akan terbentuk 3 buah file upload.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://gubukopensource.org/2007/11/28/resize-image-jpeg-dengan-php/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
		<item>
		<title>Instalasi Apache2+PHP5 menggunakan mod_fcgid</title>
		<link>http://gubukopensource.org/2007/06/17/instalasi-apache2php5-menggunakan-mod_fcgid/</link>
		<comments>http://gubukopensource.org/2007/06/17/instalasi-apache2php5-menggunakan-mod_fcgid/#comments</comments>
		<pubDate>Sun, 17 Jun 2007 02:07:36 +0000</pubDate>
		<dc:creator>webmaster</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://gubukopensource.org/2007/06/17/instalasi-apache2php5-menggunakan-mod_fcgid/</guid>
		<description><![CDATA[Written by gerson
Monday, 05 February 2007
Selama ini saya sudah cukup puas menggunakan Apache2 dengan metode prefork (apache2-mpm-prefork) digabung dengan modul PHP5 (libapache2-mod-php5). Sampai suatu saat web server saya kedut-kedutan kehabisan resource karena dikeroyok banyak user. Apache dan modul PHP banyak mengkonsumsi memori karena setiap request dihandle oleh satu proses sendiri.
Ketika saya googling, saya menemukan bahwa [...]]]></description>
			<content:encoded><![CDATA[<p>Written by gerson<br />
Monday, 05 February 2007</p>
<p>Selama ini saya sudah cukup puas menggunakan Apache2 dengan metode prefork (apache2-mpm-prefork) digabung dengan modul PHP5 (libapache2-mod-php5). Sampai suatu saat web server saya kedut-kedutan kehabisan resource karena dikeroyok banyak user. Apache dan modul PHP banyak mengkonsumsi memori karena setiap request dihandle oleh satu proses sendiri.</p>
<p>Ketika saya googling, saya menemukan bahwa Apache2 dengan metode worker (apache2-mpm-worker) lebih efisien &#038; hemat resources karena satu proses bisa menangani banyak request (multithreading). Tapi apa daya, ketika saya mencoba menginstall apache2-mpm-worker, si Ubuntu ngomel minta uninstall libapache2-mod-php5. Ternyata modul PHP5 tidak kompatibel, dia maunya cuma sama si apache2-mpm-prefork.</p>
<p>Saya googling lagi, dan ternyata saya harus pakai PHP dalam bentuk CGI. Hiiy saya dulu punya pengalaman buruk menggunakan PHP CGI, banyak error gitu deh. Tapi ternyata jaman sudah berubah, sekarang ada FCGI, yang lebih handal dalam soal menangani aplikasi CGI. Salah satu kelebihan FCGI adalah sudah multi-threading, jadi sekali lagi seperti si apache2-mpm-worker, lebih hemat resource. Lagipula Apache jadi lebih enteng, karena hanya menangani request halaman statis (html, gambar, css dan lain-lain). Semua request PHP ditangani oleh PHP sendiri.</p>
<p>Oke lah kalau begitu kita langsung saja mulai nginstallnya.</p>
<p>Instalasi Apache2 dan mod_fcgid<br />
Pertama-tama kita install dulu Apache2 dan modul FCGI:<br />
$ sudo apt-get install apache2-mpm-worker libapache2-mod-fcgid<br />
Setelah itu kita harus menyalakan modul FCGI terlebih dahulu:<br />
$ sudo a2enmod fcgid</p>
<p>Instalasi PHP5<br />
Setelah itu install paket-paket PHP5. Dibawah ini adalah modul-modul standar, silahkan tentukan sendiri modul-modul yang diinginkan:<br />
$ sudo apt-get install php5-cgi php5-curl php5-gd php5-ldap php5-mysql php5-mysqli php5-sqlite php5-xsl</p>
<p>Konfigurasi Apache<br />
Edit file /etc/apache2/sites-available/default, lalu taruh teks dibawah ini di bagian sesudah ?NameVirtualHost? dan sebelum<br />
<virtualhost>:</p>
<p><directory /var/www><br />
AddHandler fcgid-script .php<br />
FCGIWrapper /usr/lib/cgi-bin/php5 .php<br />
</directory></p>
<p>Kemudian pada masing-masing <directory> lainnya, tambahkan opsi ExecCGI pada baris Options.<br />
Contoh:<br />
Options ExecCGI Indexes</p>
<p>Nah kalau sudah selesai semua, tinggal restart apache deh:<br />
$ sudo /etc/init.d/apache2 force-reload</p>
<p>Silahkan ditest menggunakan phpinfo(). Selamat menikmati Apache+PHP yang lebih mantab!<br />
</directory></virtualhost></p>
]]></content:encoded>
			<wfw:commentRss>http://gubukopensource.org/2007/06/17/instalasi-apache2php5-menggunakan-mod_fcgid/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
