<?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>Catatan &#187; PHP</title>
	<atom:link href="http://riyogarta.com/category/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://riyogarta.com</link>
	<description>Blognya Riyogarta, mencatat apa yang perlu dicatat</description>
	<lastBuildDate>Sat, 11 Feb 2012 01:24:54 +0000</lastBuildDate>
	<language>in</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>PHP: Start From Scratch</title>
		<link>http://riyogarta.com/2009/08/01/php-start-from-scratch/</link>
		<comments>http://riyogarta.com/2009/08/01/php-start-from-scratch/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 23:59:25 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[PHP]]></category>
		<guid isPermaLink="false">http://riyogarta.com/?p=928</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="460" height="372" cacodebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/lzO-FEXX_SM&amp;hl=en&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="460" height="372" src="http://www.youtube.com/v/lzO-FEXX_SM&amp;hl=en&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2009/08/01/php-start-from-scratch/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>PHP Easy Step</title>
		<link>http://riyogarta.com/2008/06/11/php-easy-step/</link>
		<comments>http://riyogarta.com/2008/06/11/php-easy-step/#comments</comments>
		<pubDate>Wed, 11 Jun 2008 02:56:51 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[PHP]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2008/06/11/php-easy-step/</guid>
		<description><![CDATA[Jika Anda berminat untuk mempelajari dan ingin lebih tahu mengenai PHP, silakan untuk menghadiri acara PHP Developers Day pada tanggal 19 Juni 2008 di Gedung PDII Lt. 2 LIPI Jl. Gatot Subroto Kav. 10, Jakarta. Saya sendiri insya Allah akan menjadi pembicara dengan topik yang sama dengan judul posting ini Untuk melihat lebih jelas rundown [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://riyogarta.com/wp-content/uploads/2008/06/windowslivewriterphpeasystep-8bc5phpdev-2.jpg" target="_blank"><img style="border-right: 0px; border-top: 0px; margin: 0px 15px 0px 0px; border-left: 0px; border-bottom: 0px" height="135" src="http://riyogarta.com/wp-content/uploads/2008/06/windowslivewriterphpeasystep-8bc5phpdev-thumb.jpg" width="109" align="left" border="0"></a>Jika Anda berminat untuk mempelajari dan ingin lebih tahu mengenai PHP, silakan untuk menghadiri acara <strong>PHP Developers Day</strong> pada tanggal 19 Juni 2008 di Gedung PDII Lt. 2 LIPI Jl. Gatot Subroto Kav. 10, Jakarta. Saya sendiri insya Allah akan menjadi pembicara dengan topik yang sama dengan judul posting ini <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_smiley.gif' alt=':)' class='wp-smiley' /> </p>
<p>Untuk melihat lebih jelas rundown dari acara tersebut, silakan klik thumbnail di sebelah kiri atas posting ini. Untuk mengikuti acara silakan untuk melakukan pendaftaran dengan cara mengirimkan nama Anda, organisasi dan URL (jika ada) melalui email ke <strong>phpdeveloperday at live.com</strong>. Tempat terbatas hanya 200 kursi.</p>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2008/06/11/php-easy-step/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Tamu Asing di Gathering KPHPI V</title>
		<link>http://riyogarta.com/2007/09/12/tamu-asing-di-gathering-kphpi-v/</link>
		<comments>http://riyogarta.com/2007/09/12/tamu-asing-di-gathering-kphpi-v/#comments</comments>
		<pubDate>Wed, 12 Sep 2007 09:28:20 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[Diary]]></category>
		<category><![CDATA[PHP]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2007/09/12/tamu-asing-di-gathering-kphpi-v/</guid>
		<description><![CDATA[Sebetulnya sudah mau diposting sehari setelah acara Gathering KPHPI V selesai diadakan, hanya kok ndilalah ada saja halangan, ya internet di rumah mati, ngantuk, kerjaan dsb. Alhamdulillah acara yang disponsori oleh Zend Technologies dan PT.Rynet Cipta Teknologi di hari Sabtu, 8 September 2007 kemarin sukses. Sayang, peserta yang datang hanya 40.9% dari 93 orang yang [...]]]></description>
			<content:encoded><![CDATA[<p>Sebetulnya sudah mau diposting sehari setelah acara Gathering KPHPI V selesai diadakan, hanya kok <em>ndilalah</em> ada saja halangan, ya internet di rumah mati, ngantuk, kerjaan dsb. Alhamdulillah acara yang disponsori oleh Zend Technologies dan PT.Rynet Cipta Teknologi di hari Sabtu, 8 September 2007 kemarin sukses. Sayang, peserta yang datang hanya 40.9% dari  93 orang yang mendaftar di <a href="http://gathering.phpug.or.id/" target="_blank">http://gathering.phpug.or.id/</a>. Seperti yang sudah-sudah, ternyata semangat mendaftar lebih tinggi dibandingkan semangat untuk datang di hari-H-nya <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_tongue.gif' alt=':p' class='wp-smiley' />  Beberapa ada juga yang sudah niat datang tetapi tidak menemukan alamat dimana Gathering KPHPI V diadakan, padahal saya sudah mengupload peta lokasi bikinan <a href="http://wibisastro.wordpress.com/" target="_blank">Wibisono</a> di situs pendaftaran. Btw, ada juga lho peserta yang bela-belain datang dari luar kota .. top!</p>
<p><span id="more-450"></span>Bagi yang mau melihat foto-foto saat acara ini berlangsung, silakan lihat hasil jepretan <a href="http://yuliazmi.com" target="_blank">Yuliazmi</a> di <a href="http://riyogarta.com/gathering-kphpi-v/" target="_blank">http://riyogarta.com/gathering-kphpi-v/</a>, atau bisa juga melihat hasil jepretan panitia Rynet di <a href="http://picasaweb.google.com/riki.risnandar/GatheringPhpugSept07DapoerCiragil" target="_blank">Picasa</a>.</p>
<p>Acara dimulai jam 10.30, telat setengah jam karena menunggu peserta yang diperkirakan masih dalam perjalanan. Dibuka oleh  Ucok sang Kontak Person, lalu dilanjutkan oleh Saya,  mas Rama dan mas Riki. Nah, bagi yang tidak datang tetapi ingin melihat presentasi yang dibawakan, silakan untuk melihatnya <a href="http://www.risnandar.com/file/PHP%20Zend%20Framework.html" target="_blank">disini</a>. Acara ditutup dengan pengundian untuk memenangkan doorprize Zend Studio versi terbaru, perkenalan antar peserta, diskusi serta kesan pesan mengenai acara ini. Terimakasih kepada Zend Technologies dan PT.Rynet Cipta Teknologi yang telah mensponsori acara ini, juga kepada semua yang telah hadir untuk mensukseskan acara ini.</p>
<blockquote><p>&#8220;Kok judulnya Tamu Asing di Gathering KPHPI V?&#8221;<br />
&#8220;Soalnya memang bener ada tamu asing, ini saya mau cerita&#8221;</p></blockquote>
<p>Oke cerita mengenai Gathering KPHPI V cukup sekian, pokoknya yang sudah mendaftar dan tidak datang rugi deh <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_tongue.gif' alt=':p' class='wp-smiley' /> </p>
<p>Cerita lain yang masih ada hubungannya dengan terselenggaranya acara ini adalah hadirnya tamu asing. Tamu asing ini dikenal dengan nama <a href="http://en.wikipedia.org/wiki/Orb_%28paranormal%29" target="_blank">Orb</a>. Saya kebetulan adalah salah satu dari sekian banyak pengguna kamera digital yang suka iseng mencari <a href="http://en.wikipedia.org/wiki/Orb_%28paranormal%29" target="_blank">Orb</a>. <a href="http://en.wikipedia.org/wiki/Orb_%28paranormal%29" target="_blank">Orb</a> biasanya muncul ditempat-tempat yang sering dianggap angker, rumah-rumah yang sudah tua, kuburan dan di beberapa tempat lainnya tanpa memiliki spesifikasi yang jelas. Sebagian mempercayai bahwa <a href="http://en.wikipedia.org/wiki/Orb_%28paranormal%29" target="_blank">Orb</a> adalah pantulan flash dari kamera terhadap debu yang berterbangan, tetapi sebagian lain memiliki keyakinan bahwa <a href="http://en.wikipedia.org/wiki/Orb_%28paranormal%29" target="_blank">Orb</a> adalah sebuah energi misterius (kalau kata klenik ini mungkin roh halus &#8230; mungkin lho).</p>
<p>Nah, ternyata setelah diteliti &#8230; <a href="http://en.wikipedia.org/wiki/Orb_%28paranormal%29" target="_blank">Orb</a> ini ada pada beberapa foto yang diambil dalam ruangan dimana Gathering KPHPI V ini diadakan, bisa dilihat di <a href="http://riyogarta.com/orb-gathering-kphpi-v/" target="_blank">http://riyogarta.com/orb-gathering-kphpi-v/</a>. Mmm, ternyata peminat PHP bukan hanya manusia &#8230; tapi juga <a href="http://en.wikipedia.org/wiki/Orb_%28paranormal%29" target="_blank">Orb</a> <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_laughloud.gif' alt=':))' class='wp-smiley' /> </p>
<p>Link terkait sehubungan dengan Orb:<br />
<a href="http://en.wikipedia.org/wiki/Orb_%28paranormal%29" target="_blank"> http://en.wikipedia.org/wiki/Orb_%28paranormal%29</a></p>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2007/09/12/tamu-asing-di-gathering-kphpi-v/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Kejam Mode:On (Yang Ke-2)</title>
		<link>http://riyogarta.com/2007/09/11/kejam-modeon-yang-ke-2/</link>
		<comments>http://riyogarta.com/2007/09/11/kejam-modeon-yang-ke-2/#comments</comments>
		<pubDate>Mon, 10 Sep 2007 18:11:14 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[PHP]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2007/09/11/kejam-modeon-yang-ke-2/</guid>
		<description><![CDATA[Lagi lagi, masih ada orang yang tidak mau mentaati apa yang telah disyaratkan untuk menjadi anggota Ruang KoPI. Malam ini atas laporan dari salah satu anggota Ruang KoPI, saya kembali melakukan aksi kejam kepada anggota yang melakukan pelanggaran dengan menghapus account-nya tanpa basa basi. Kenapa saya lakukan ini? Ini semua tidak lain untuk menyelamatkan Ruang [...]]]></description>
			<content:encoded><![CDATA[<p>Lagi lagi, <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_doh.gif' alt='#-o' class='wp-smiley' /> masih ada orang yang tidak mau mentaati apa yang telah disyaratkan untuk menjadi anggota <a href="http://ruangkopi.com" target="_blank">Ruang KoPI</a>. Malam ini atas laporan dari salah satu anggota <a href="http://ruangkopi.com" target="_blank">Ruang KoPI</a>, saya kembali melakukan aksi kejam kepada anggota yang melakukan pelanggaran dengan menghapus <em>account</em>-nya tanpa basa basi. Kenapa saya lakukan ini? Ini semua tidak lain untuk menyelamatkan <a href="http://ruangkopi.com" target="_blank">Ruang KoPI</a> dari kekejaman admin <a href="http://www.dreamhost.com/r.cgi?330537" target="_blank">Dreamhost</a> yang sudah terkenal sering melakukan hal ini kepada <em>account-account</em> yang menyimpan barang-barang illegal. Selain itu, saya juga ingin agar <a href="http://ruangkopi.com" target="_blank">Ruang KoPI</a> memiliki anggota yang menghargai HAKI.</p>
<p><span id="more-444"></span>Anggota yang telah dihapus <em>account</em>-nya tersebut dengan sengaja mengupload dan mempersilakan pengunjung blognya untuk mendownload <a href="http://www.ruangkopi.com/files/pelanggaran-ajax.jpg" target="_blank">sebuah ebook berjudul Enterprise AJAX</a>, sebuah buku yang dijual di <a href="http://www.amazon.com/exec/obidos/tg/detail/-/0132242060/" target="_blank">Amazon</a> dengan harga USD $26.39.</p>
<p>Waduh, mudah-mudahan ini merupakan tindakan kejam saya yang terakhir kalinya. Mudah-mudahan tidak ada lagi anggota yang melakukan pelanggaran sehingga <a href="http://ruangkopi.com" target="_blank">Ruang KoPI</a> tetap exist sebagai salah satu komunitas PHP Indonesia. Mudah-mudahan tidak ada posting dengan judul <strong>Kejam Mode: On (Yang ke-3)</strong> <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_sweating.gif' alt='#:-S' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2007/09/11/kejam-modeon-yang-ke-2/feed/</wfw:commentRss>
		<slash:comments>27</slash:comments>
		</item>
		<item>
		<title>250MB, Hosting Gratis Sampai 2012!</title>
		<link>http://riyogarta.com/2007/09/05/250mb-hosting-gratis-sampai-2012/</link>
		<comments>http://riyogarta.com/2007/09/05/250mb-hosting-gratis-sampai-2012/#comments</comments>
		<pubDate>Wed, 05 Sep 2007 09:48:06 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[hosting php gratis]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2007/09/05/250mb-hosting-gratis-sampai-2012/</guid>
		<description><![CDATA[Ternyata ada perusahaan yang cukup gila, minimal untuk sementara waktu ini. Perusahaan tersebut menyediakan hosting gratis hingga tahun 2012 dengan space 250MB dengan bandwith 100GB/bulan berikut Cpanel yang juga sudah disediakan. Pemilik account-nya juga diberikan fasilitas untuk host unlimited domain atau menggunakan subdomain yang diberikan secara gratis juga Saya sudah mencoba mendaftar untuk memiliki account [...]]]></description>
			<content:encoded><![CDATA[<p>Ternyata ada perusahaan yang cukup gila, minimal untuk sementara waktu ini. Perusahaan tersebut menyediakan hosting gratis hingga tahun 2012 dengan space 250MB dengan bandwith 100GB/bulan berikut Cpanel yang juga sudah disediakan. Pemilik account-nya juga diberikan fasilitas untuk <em>host unlimited domain</em> atau menggunakan subdomain yang diberikan secara gratis juga <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /><br />
<span id="more-441"></span> Saya sudah mencoba mendaftar untuk memiliki account ini, prosesnya cepat. Yang dibutuhkan adalah nomor HP, karena <em>confirmation code</em> dikirim melalui SMS. Kalau berminat, silakan langsung daftar di <a href="http://www.000webhost.com/" target="_blank">www.000Webhost.com.</a></p>
<p>Pesen saya, jangan terlalu banyak berharap dengan sesuatu yang gratis seperti ini. Risiko selalu mengintai, jadi pergunakan saja sebagai <em>keisengan </em>dan selalu siapkan backup.</p>
<p><strong>UPDATE</strong><br />
Seperti  layanan-layanan gratis lainnya, support-nya  ternyata gak oke. Saya sudah kirim pertanyaan sejak semalam hingga sekarang belum dijawab juga <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_sad.gif' alt=':(' class='wp-smiley' />  &#8230;. Eiiitt, jangan protes, namanya juga gratis <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_laughloud.gif' alt=':))' class='wp-smiley' /><br />
Selain itu, entah kenapa, saya selalu gagal mencoba memindahkan DNS riyo.web.id yang saya miliki. Pesennya dibilang DNS-nya salah .. weleh, padahal sudah saya kopi paste dari sumbernya langsung. Mmmm, kenapa ya? -? &#8230; lagi-lagi, namanya juga gratis hehehe <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_bigsmile.gif' alt=':d' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2007/09/05/250mb-hosting-gratis-sampai-2012/feed/</wfw:commentRss>
		<slash:comments>46</slash:comments>
		</item>
		<item>
		<title>Gathering V Komunitas PHP Indonesia</title>
		<link>http://riyogarta.com/2007/09/02/gathering-v-komunitas-php-indonesia/</link>
		<comments>http://riyogarta.com/2007/09/02/gathering-v-komunitas-php-indonesia/#comments</comments>
		<pubDate>Sun, 02 Sep 2007 11:49:53 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[PHP]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2007/09/02/gathering-v-komunitas-php-indonesia/</guid>
		<description><![CDATA[Sudah ke-5? Betul. Semula gathering komunitas PHP Indonesia ini hendak diadakan setiap bulan sekali, lalu sesuai dengan perkembangan jaman menjadi 2 bulan sekali . Akhirnya, memang belum jelas apakah akan diadakan setiap bulan sekali, 2 bulan sekali, 6 bulan sekali atau diadakan kalau lagi mau hehehe Sebetulnya gathering ke-5 ini seingat saya sudah akan diadakan [...]]]></description>
			<content:encoded><![CDATA[<p>Sudah ke-5? Betul. Semula gathering komunitas PHP Indonesia ini hendak diadakan setiap bulan sekali, lalu sesuai dengan perkembangan jaman menjadi 2 bulan sekali <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_bigsmile.gif' alt=':d' class='wp-smiley' /> . Akhirnya, memang belum jelas apakah akan diadakan setiap bulan sekali, 2 bulan sekali, 6 bulan sekali atau diadakan kalau lagi mau hehehe <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_bigsmile.gif' alt=':d' class='wp-smiley' /> </p>
<p><span id="more-437"></span>Sebetulnya gathering ke-5 ini seingat saya sudah akan diadakan beberapa bulan yang lalu. Namun &#8211;<em>kalau tidak salah</em>&#8211; terbentur dengan masalah tempat yang tak kunjung didapat sehingga akhirnya tidak jadi diadakan <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_sad.gif' alt=':(' class='wp-smiley' />  Nah, beberapa minggu yang lalu <a href="http://www.risnandar.com/" target="_blank">mas Riki</a> menghubungi saya menanyakan mengenai gathering yang sudah lama tidak diadakan ini. Dia menawarkan tempat untuk gathering sekaligus ingin memperkenalkan Zend Framework dalam acara tersebut. Singkat kata, bak gayung bersambut, acara gathering ke-5 disambut baik dalam <a href="http://groups.yahoo.com/group/phpug/" target="_blank">milis KPHPI</a> dan pendaftaran pun dibuka di tempat biasa yaitu di <a href="http://gathering.phpug.or.id" target="_blank">gathering.phpug.or.id</a>.</p>
<p>Saat posting tulisan ini dibuat, jumlah pendaftar sudah mencapai 51 orang. Mmm, mudah-mudahan minat mendaftarnya sama besar dengan minat untuk datang ke acaranya <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' />  Bukannya apa-apa, pengalaman dari yang sudah-sudah, gathering I, II, III dan IV, jumlah yang datang kurang dari 50% &#8230; bukan 68% lho hahaha <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_laughloud.gif' alt=':))' class='wp-smiley' /> </p>
<p>Silakan bagi yang ingin mengikuti gathering, lihat dimana lokasinya, kapan waktunya dan daftar di <a href="http://gathering.phpug.or.id" target="_blank">http://gathering.phpug.or.id</a> tanpa dipungut biaya!</p>
<p>Semoga Gathering V Komunitas PHP Indonesia berjalan lancar dan bermanfaat bagi kita semua. Amin.</p>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2007/09/02/gathering-v-komunitas-php-indonesia/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Satu Bulan di Dreamhost</title>
		<link>http://riyogarta.com/2007/08/22/satu-bulan-di-dreamhost/</link>
		<comments>http://riyogarta.com/2007/08/22/satu-bulan-di-dreamhost/#comments</comments>
		<pubDate>Wed, 22 Aug 2007 15:02:45 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[Diary]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[coupon dreamhost]]></category>
		<category><![CDATA[coupon dreamhost $97]]></category>
		<category><![CDATA[dreamhost tips]]></category>
		<category><![CDATA[kupon dreamhost]]></category>
		<category><![CDATA[kupon dreamhost $97]]></category>
		<category><![CDATA[promo code dreamhost]]></category>
		<category><![CDATA[promo code dreamhost $97]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2007/08/22/satu-bulan-di-dreamhost/</guid>
		<description><![CDATA[Setelah bulan lalu memutuskan untuk membeli hosting plan Crazy Domain Insane di Dreamhost, yang saya rasakan adalah penyesalan yang tiada terhingga. Ya! Saya menyesal kenapa baru sekarang menggunakan hosting tersebut Dreamhost menyediakan hampir semua hal yang tidak pernah saya dapatkan dari hosting saya yang lama, baik dari sisi space &#38; bandwith, performa, fasilitas dan juga [...]]]></description>
			<content:encoded><![CDATA[<p>Setelah bulan lalu memutuskan untuk membeli <em>hosting plan</em> Crazy Domain Insane di <a href="http://www.dreamhost.com/r.cgi?330537" target="_blank">Dreamhost</a>, yang saya rasakan adalah penyesalan yang tiada terhingga. Ya! Saya menyesal kenapa baru sekarang menggunakan hosting tersebut <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_bigsmile.gif' alt=':d' class='wp-smiley' />  <a href="http://www.dreamhost.com/r.cgi?330537" target="_blank">Dreamhost</a> menyediakan hampir semua hal yang tidak pernah saya dapatkan dari hosting saya yang lama, baik dari sisi space &amp; bandwith, performa, fasilitas dan juga support yang memuaskan.</p>
<p><span id="more-420"></span>Berikut hal-hal yang menjadi higlight dari fasilitas <a href="http://www.dreamhost.com/r.cgi?330537" target="_blank">Dreamhost</a> menurut saya:</p>
<ol>
<li>Kapasitas space yang luar biasa, saya memiliki space sebesar 200GB yang selalu bertambah perminggu sebanyak 1GB. Sampai saya bingung, untuk apa ya space sebesar ini <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_think.gif' alt=':-?' class='wp-smiley' />  Itu sebabnya saya putuskan untuk membagi-bagikannya kepada saudara-saudara saya, memindahkan seluruh situs klien-klien saya, beberapa rekan saya dan akhirnya membuat satu account (lagi) khusus bagi mereka yang berkeinginan belajar PHP di <a href="http://ruangkopi.com" target="_blank">Ruang KoPI</a><a href="http://ruangkopi.com" target="_blank"></a>.</li>
<li>Kapasitas bandwith yang juga luar biasa (2TB/bulan). Aha, saya tidak lagi kuatir dengan masalah habisnya quota bandwith yang disediakan, belum lagi bandwith ini pun akan selalu bertambah setiap bulannya sebanyak 16GB!</li>
<li>Quota bisa diatur (baik quota space maupun bandwith) terhadap masing-masing domain yang ditumpangkan dalam acount (domain hosted).</li>
<li>Domain hosted dan subdomainnya bisa dibuat dalam jumlah unlimited.</li>
<li>Database yang juga unimited.</li>
<li>Bisa memilih untuk menggunakan PHP5 atau PHP4 untuk setiap domain atau subdomain yang ada. Bahkan dengan sedikit trik, php.ini bisa dibuat sesuai dengan keinginan.</li>
<li>Mendukung Ruby on Rails (RoR), saya memang belum paham, tetapi jadi kepingin belajar juga <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /> </li>
<li>Fasilitas backup otomatis pada setiap direktory yang ada untuk 1 jam yang lalu, 2 jam yang lalu, 1 hari yang lalu, 2 hari yang lalu, 1 minggu yang lalu dan 2 minggu yang lalu.</li>
<li>Harganya relatif murah! Apalagi dengan menggunakan promo code yang akan saya terangkan dibagian akhir posting ini.</li>
<li>Gratis 1 buah domain (yang diberikan dalam bentuk reward sebesar USD $9.95) sepanjang account hosting <a href="http://www.dreamhost.com/r.cgi?330537" target="_blank">Dreamhost</a> Anda aktif.</li>
<li>Support melalui email yang &#8212;hingga kini&#8212; memuaskan. Jam berapa pun Anda kirim email, berdasarkan pengalaman yang telah saya lalui, akan dijawab dalam tempo kurang dari setengah jam dengan jawaban yang (bagi saya) memuaskan.</li>
</ol>
<p>Untuk lengkapnya, silakan lihat <a href="https://dreamhost.com/hosting.html" target="_blank">fasiltas yang diberikan dreamhost</a> kepada pelanggannya.</p>
<p>Ada kelebihan ada juga kekurangannya</p>
<ol>
<li>Meskipun <a href="http://www.dreamhost.com/r.cgi?330537" target="_blank">Dreamhost</a> memberikan kebebasan terhadap pelanggannya untuk menumpangkan berapa pun jumlah domain kedalam sebuah account yang kita miliki, tetapi Dreamhost membatasi jumlah user FTP dan email.</li>
<li>Ada beberapa bagian dari control panel <a href="http://www.dreamhost.com/r.cgi?330537" target="_blank">Dreamhost</a> yang menurut saya cukup riskan untuk di share meskipun account tersebut telah dibatasi privasinya. Mungkin ini bug yang akan dibenahi dikemudian hari. <em>Itu alasan saya tidak memberikan panel ini &#8211;meskipun hal in bisa dilakukan&#8211; kepada anggota <a href="http://ruangkopi.com" target="_blank">Ruang KoPI</a></em>.</li>
<li>Bagi mereka yang sudah terbiasa dengan Cpanel, mungkin agak bingung menggunakan control panel yang disediakan <a href="http://www.dreamhost.com/r.cgi?330537" target="_blank">Dreamhost</a>. Tetapi tenang saja, ini hanya diawal karena selanjutnya Anda akan terbiasa <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /><br />
**<em>saya bahkan menilai panel </em><a href="http://www.dreamhost.com/r.cgi?330537" target="_blank">Dreamhost</a><em> jauh lebih praktis dibandingkan Cpanel</em>.</li>
</ol>
<p>Nah, bagi Anda yang berkeinginan memiliki account <a href="http://www.dreamhost.com/r.cgi?330537" target="_blank">Dreamhost</a> sendiri, syaratnya hanya satu, yaitu punya kartu credit yang valid dan bayarlah melalui <a href="https://checkout.google.com/">Google Checkout</a>. Kenapa harus pakai <a href="https://checkout.google.com/">Google Checkout</a>? Karena <em>kata yang sudah pernah mencoba</em>, kartu kredit yang berasal dari Indonesia ditolak oleh <a href="http://www.dreamhost.com/r.cgi?330537" target="_blank">Dreamhost</a>, tetapi (saya sudah buktikan) tidak ditolak oleh <a href="https://checkout.google.com/">Google Checkout</a> dan prosesnya sangat mudah.</p>
<blockquote><p>Berdasarkan pengalaman, menggunakan kartu kredit Citibank Gold hanya membutuhkan waktu 2 jam untuk pengaktifannya, sementara menggunakan kartu kredit BCA Gold membutuhkan waktu 3 hari (itu pun setelah melakukan komplain bolak-balik melalui email ke Dreamhost). Gimana dengan kartu kredit lain? Coba sendiri ajah lah <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_tongue.gif' alt=':p' class='wp-smiley' /> </p></blockquote>
<p>Kalau ingin mendapat potongan maksimum USD $97 terhadap <em>hosting plan</em> yang dipilih, yang perlu Anda lakukan adalah memanfaatkan promo code yang bisa Anda cari dengan googling atau (kalau tidak mau capek cari) bisa menggunakan promo code yang telah saya buat yaitu <strong>DISKON97NIH</strong>. Daftar diskon harga menggunakan promo code <strong>DISKON97NIH</strong> untuk masing-masing planning adalah seperti dibawah ini:</p>
<p><img src="http://riyogarta.com/wp-content/uploads/2007/08/diskon97nih.jpg" alt="diskon dreamhost" /></p>
<p>Sebagai contoh, jika Anda memilih plan Crazy Domain Insane (L1) untuk masa 2 tahun sekaligus, yang harus Anda bayar sebenarnya adalah USD $190.80 (lihat table, Two years L1). Tetapi, jika Anda menggunakan promo code <strong>DISKON97NIH</strong>, maka yang harus Anda bayar adalah USD $190.80 &#8211; $97 = $93.8. Jika kurs rupiah 9400, maka Anda sebenarnya membayar <strong>Rp. 881.720 untuk hosting dengan space 200GB dan bandwith 2TB dengan masa sewa 2 tahun!</strong></p>
<p><img src="http://riyogarta.com/wp-content/uploads/2007/08/promocode.jpg" alt="Promo code" /></p>
<p><font size="-1">lembar ini ada dibagian bawah halaman <a href="https://dreamhost.com/signup/" target="_blank">https://dreamhost.com/signup/</a></font></p>
<p><strong>Peringatan: </strong></p>
<ol>
<li>Promo code hanya bisa dipergunakan untuk account baru. Artinya hanya berlaku sekali dan tidak berlaku untuk harga perpanjangan hosting. Jadi saya usul, kalau memang mau, sekaligus pilih saja plan untuk 2 tahun. Pada tahun ke-3 Anda harus membayar full.</li>
<li>Dengan menggunakan promo code, Anda tidak bisa menhosting nama domain yang sebelumnya pernah di hosting di Dreamhost, walaupun itu adalah domain milik Anda sendiri!</li>
<li>Promo code hanya bisa dimanfaatkan pada saat mendaftar. Jadi Anda tidak bisa meminta atau menggunakan promo code ketika pendaftaran sudah dilakukan.</li>
<li>Jangan lupa membaca <a href="http://http://www.dreamhost.com/tos.html" target="_blank">Term of Service</a>, <a href="http://www.dreamhost.com/spam.html">Anti Spam Policy</a> dan <a href="http://www.dreamhost.com/register-agreement.html" target="_blank">Registration Term</a> atau Anda akan menyesal dikemudian hari karena tiba-tiba account Anda di suspend bahkan dihapus tanpa basa-basi.</li>
<li>Terakhir, karena Anda menggunakan kartu kredit untuk bertransaksi di internet, maka ber-HATI-HATI-lah. Teliti saat bertransaksi kecuali jika Anda siap untuk menyesal.</li>
</ol>
<p>Semoga Bermanfaat <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_smiley.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2007/08/22/satu-bulan-di-dreamhost/feed/</wfw:commentRss>
		<slash:comments>53</slash:comments>
		</item>
		<item>
		<title>kumpul@ruangkopi.com</title>
		<link>http://riyogarta.com/2007/08/21/kumpulruangkopicom/</link>
		<comments>http://riyogarta.com/2007/08/21/kumpulruangkopicom/#comments</comments>
		<pubDate>Tue, 21 Aug 2007 14:46:25 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[Diary]]></category>
		<category><![CDATA[PHP]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2007/08/21/kumpulruangkopicom/</guid>
		<description><![CDATA[Judul yang seperti alamat email ini sebenarnya bukan alamat email, tetapi nama dari aggregator yang saya buat khusus bagi mereka anggota Ruang KoPI yang memiliki blog. Jadi, selain diberi fasilitas hosting untuk digunakan sebagai ruang belajar PHP, lalu juga milis khusus Ruang KoPI, para anggota Ruang KoPI juga saya himbau (yang juga saya tuangkan dalam [...]]]></description>
			<content:encoded><![CDATA[<p>Judul yang seperti alamat email ini sebenarnya bukan alamat email, tetapi nama dari aggregator yang saya buat khusus bagi mereka anggota <a href="http://ruangkopi.com" target="_blank">Ruang KoPI</a> yang memiliki blog. Jadi, selain diberi fasilitas hosting untuk digunakan sebagai ruang belajar PHP, lalu juga milis khusus Ruang KoPI, para anggota Ruang KoPI juga saya himbau (yang juga saya tuangkan dalam syarat-syarat untuk menjadi anggota) agar menyebarkan ilmunya dalam bentuk tulisan di blog. Nah, blog-blog yang mereka tulis itu semuanya dikumpulan di <a href="http://kumpul.ruangkopi.com" target="_blank">kumpul@ruangkopi.com</a>.</p>
<p><span id="more-430"></span>Aggregator <a href="http://kumpul.ruangkopi.com" target="_blank">kumpul@ruangkopi.com</a> ini dibangun menggunakan wordpress dengan plugin <a href="http://http://projects.radgeek.com/feedwordpress" target="_blank">FeedWordPress</a> yang updatenya akan dilakukan setiap 30 menit sekali &#8211;<em>tentunya dengan memanfaatkan cron jobs</em>. Sebelumnya, saya mencoba membuat aggregator ini menggunakan <a href="http://planetplanet.org" target="_blank">Planet</a>, hanya kok rasa-rasanya ribet dan tidak praktis (apa saya ajah kali yah yang tidak familiar dengan python hehehe). Setelah baca sana sini, gooling kiri kanan, akhirnya saya putuskan untuk menggunakan WordPress dengan plugin tersebut.</p>
<p>Kedepan <em>sih</em>, harapan saya ada salah satu atau lebih anggota Ruang KoPI yang membuat script aggregator sendiri. Sudah barang tentu, script ini akan saya pasang di <a href="http://kumpul.ruangkopi.com" target="_blank">kumpul@ruangkopi.com</a> menggantikan WordPress dengan pluginnya.  Tidak hanya itu, syukur-syukur akan ada satu atau lebih anggota Ruang KoPI yang mampu membut script blog sekelas WordPress (atau bahkan lebih baik lagi), atau membuat CMS dan sebagainya. Oke, selamat berkarya dengan memanfaatkan fasilitas yang ada.</p>
<p>Next Project:<br />
Membuat  subdomain di Ruang KoPI yang berisi script-script PHP asli buatan putra/putri Indonesia. Mmm, pakai script yang sudah jadi atau buat sendiri ya? Atau ada yang punya atau mau membuatkannya?  Ditunggu <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2007/08/21/kumpulruangkopicom/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Kejutan PHPers Indonesia versi 2.0</title>
		<link>http://riyogarta.com/2007/07/29/kejutan-untuk-phpers-indonesia-versi-20/</link>
		<comments>http://riyogarta.com/2007/07/29/kejutan-untuk-phpers-indonesia-versi-20/#comments</comments>
		<pubDate>Sat, 28 Jul 2007 22:11:43 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[kejutan 2.0]]></category>
		<category><![CDATA[kejutan phpers indonesia]]></category>
		<category><![CDATA[kejutan riyogarta]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2007/07/29/kejutan-untuk-phpers-indonesia-versi-20/</guid>
		<description><![CDATA[Melihat animo yang begitu besar atas posting saya sebelumnya (Kejutan Untuk PHPers Indonesia), maka saya memutuskan untuk melakukan sedikit perubahan terhadap fasilitas dan syarat sebelumnya. Kali ini saya akan menaikkan kejutan yang saya berikan sebelumnya, yakni hosting dengan space 1GB menjadi 2GB (yang akan bertambah 0.05GB/bulan) bandwith 18GB/bulan (yang akan bertambah 0.8GB/bulan). Selain itu, Kejutan [...]]]></description>
			<content:encoded><![CDATA[<p>Melihat animo yang begitu besar atas posting saya sebelumnya (<a href="http://riyogarta.com/2007/07/26/kejutan-untuk-phpers-indonesia/" target="_blank">Kejutan Untuk PHPers Indonesia</a>), maka saya memutuskan untuk melakukan sedikit perubahan terhadap fasilitas  dan syarat sebelumnya.  Kali ini saya akan menaikkan kejutan yang saya berikan sebelumnya, yakni hosting dengan space 1GB menjadi <strong>2GB</strong> (yang akan bertambah 0.05GB/bulan) bandwith <strong>18GB</strong>/bulan (yang akan bertambah 0.8GB/bulan). Selain itu, Kejutan v.2.0 ini juga akan <strong>menampung bagi mereka yang tidak memiliki domain</strong>.</p>
<p><span id="more-418"></span></p>
<p>Mengapa begitu? Karena saya akan benar-benar membuatkan account khusus bagi Kejutan v.2.0 di hosting <a href="http://dreamhost.com">Dreamhost</a> <strong>untuk masa 2 tahun</strong>. Tetapi, kali ini tidak benar-benar gratis seperti sebelumnya. Saya membutuhkan sedikit sumbangan dari mereka yang berminat sebesar Rp. 15.000. Bagaimana syaratnya?</p>
<ol>
<li><strong>Jujur dan tidak mempunyai keinginan/kecendrungan untuk melakukan hal-hal yang berlawanan dengan hukum</strong>.</li>
<li><strong>Tidak punya kebiasaan dan niat untuk merusak</strong>.</li>
<li><strong>Memiliki keinginan kuat untuk belajar dan mengembangkan PHP</strong>, baik bagi dirinya maupun bagi komunitas PHP Indonesia.</li>
<li><strong>Memiliki email aktif</strong> (baca: email yang rutin dilihat).</li>
<li><strong>Berbagi ilmu</strong> adalah amal ibadah, maka setiap anggota Kejutan v.2.0 ini dihimbau untuk memiliki blog yang diisi diantaranya dengan tulisan tentang hal-hal yang bermanfaat bagi siapapun khususnya bagi PHPers.</li>
<li><strong>Tidak bertujuan membangun situs yang menghasilkan profit.</strong></li>
<li><strong>Mau atau sudah bergabung dengan satu atau lebih milis PHP</strong> (seperti KPHPI, ID-PHP dsb)</li>
<li><strong>Bersedia menyumbangkan Rp. 15.000</strong></li>
<li><strong>Bersedia untuk bergabung dengan <a href="http://groups.yahoo.com/group/kejutan20/" target="_blank">milis Kejutan20</a><br />
</strong></li>
</ol>
<p>Lalu bagaimana mendapatkan Kejutan versi 2.0 ini? Caranya mudah.</p>
<ol>
<li><strike>Anda memahami kelima syarat diatas</strike></li>
<li><strike>Memberikan komentar pada posting ini dengan isi minimal: </strike>
<ul>
<li><strike>Perkenalan siapa  diri Anda secara singkat dan jelas</strike></li>
<li><strike>Apa yang hendak Anda lakukan dengan memilki hosting dengan space sebesar 2GB atau lebih dengan memanfaatkan PHP.</strike></li>
</ul>
</li>
</ol>
<p>Silakan untuk mendaftar di <a href="http://www.ruangkopi.com">http://www.ruangkopi.com</a>.<br />
Untuk tahap pertama, saya akan mengeluarkan <strong>tiket Kejutan v.2.0 sebanyak 70 buah</strong>!</p>
<p>Seperti biasa, sebelum ada yang bertanya, maka saya buat dulu jawabannya <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /> </p>
<ol>
<li><strong>Kenapa sekarang harus bayar?</strong><br />
Karena saya akan membuat account khusus untuk hal ini di <a href="http://" target="_blank">dreamhost</a> dengan paket level 1 selama 2 tahun! Kalau Anda berpikir saya akan mengambil untung, sebaiknya Anda tidak usah ikutan saja <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_silent.gif' alt='[-(' class='wp-smiley' /> </li>
<li><strong>Sampai kapan hosting seharga Rp. 15.000 ini bisa dipergunakan?</strong><br />
Bisa Anda pergunakan sepuas-puasnya selama 2 tahun <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_bigsmile.gif' alt=':d' class='wp-smiley' /> .  Saya rasa waktu dua tahun sudah lebih dari cukup untuk mempelajari  bahkan menciptakan karya menggunakan PHP.</li>
<li><strong>Kemana saya harus kirim sumbangan tersebut?</strong><br />
Transfer ke nomor rekening bank BCA atau bank Mandiri. Nomor rekening akan diberitahukan kemudian.</li>
<li><strong>Bagaimana setelah 2 tahun?</strong><br />
Saya mempersilakan Anda semua sebagai pemegang tiket Kejutan 2.0 untuk berunding menentukan apakah akan diteruskan atau tidak, tentunya tanpa biaya subsidi (artinya bisa lebih dari Rp. 15.000/orang).</li>
<li><strong>Kenapa harus bersedia bergabung dengan milis Kejutan20?</strong><br />
Milis ini saya buat untuk kepentingan supporting terhadap para pemegang tiket Kejutan 2.0. Jadi sudah sewajarnya jika pemegang tiket Kejutan 2.0 harus mengikuti milis ini kecuali tidak ingin tahu lebih banyak mengenai hosting yang Anda miliki <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /> </li>
<li><strong>Kenapa dibilang hosting dengan space 2GB atau lebih?</strong><br />
Karena setiap bulannya (sebetulnya mingguan) space Anda akan selalu bertambah <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /> </li>
<li><strong>Apakah Kejutan v.2.0 ini boleh dipergunakan untuk membangun situs e-commerce</strong><br />
Kalau sebatas membangun situs e-commerce (tentunya) menggunakan PHP silakan saja, ini namanya belajar. Tetapi jika kejutan ini lantas dipergunakan untuk situs yang bertujuan profit, mohon maaf, saya akan mencabut kejutan ini dari Anda tanpa mengembalikan uang yang telah Anda sumbangkan. Kejutan ini ditujukan bagi mereka yang mau belajar tetapi memiliki keterbatasan (maaf) ekonomi, jadi jika situs yang Anda bangun sudah memiliki profit, maka Anda bukan termasuk orang yang menjadi tujuan kejutan ini <img src="http://riyogarta.com/smilies/yahoo_smiley.gif" alt=":)" class="wp-smiley" title=":)" height="18" width="18" /></li>
<li><strong>PHP versi berapa yang disediakan Kejutan v.2.0 ini?</strong><br />
Kejutan ini menyediakan dua buah versi PHP, versi 5.2.2 dan versi 4.4.7. Anda yang mendapatkan kejutan akan diberikan kebebasan untuk memilih satu diantaranya <img src="http://riyogarta.com/smilies/yahoo_smiley.gif" alt=":)" class="wp-smiley" title=":)" height="18" width="18" /></li>
<li><strong>Apakah ada dukungan untuk MySQL? Dan Berapa banyak database yang bisa kami buat?</strong><br />
Tentu saja ada yaitu MySQL versi 5 dengan jumlah database unlimited <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /> </li>
<li><strong>Mmm, sebenarnya fasilitas apa saja sih yang diberikan Kejutan v.2.0 ini?</strong><br />
Oke, berikut daftar dari fasilitas yang akan saya sediakan kali ini <img src="http://riyogarta.com/smilies/yahoo_wink.gif" alt=";)" class="wp-smiley" title=";)" height="18" width="18" /></p>
<ul>
<li>Disk Space 2GB atau lebih</li>
<li>Bandwith 18GB/bulan atau lebih</li>
<li>PHP versi 4/5</li>
<li>MySQL 5 dengan jumlah database unlimited</li>
<li>PHPMyAdmin yang sudah terinstall</li>
<li>Satu account Shell/FTP user</li>
<li>Empat puluh account email (Webmail/POP3/IMAP) dengan domain yang Anda miliki</li>
<li>Unlimited subdomain (khusus bagi mereka yang memiliki domain).</li>
<li>Backup file ( 1 hari sebelumnya, 2 hari sebelumnya, 1 minggu sebelumnya, 2 minggu sebelumnya, 1 bulan sebelumnya, 2 bulan sebelumnya )</li>
<li>Backup database ( hanya dipergunakan dalam keadaan darurat saja, Saya tidak mau direpotkan dengan permintaan restore dari Anda <img src="http://riyogarta.com/smilies/yahoo_silent.gif" alt="[-(" class="wp-smiley" title="[-(" height="18" width="18" /> )</li>
<li>Mmm, apalagi ya? <img src="http://riyogarta.com/smilies/yahoo_think.gif" alt=":-?" class="wp-smiley" title=":-?" height="18" width="18" /> Cukup sebegitu dulu <img src="http://riyogarta.com/smilies/yahoo_bigsmile.gif" alt=":d" class="wp-smiley" title=":d" height="18" width="18" /></li>
</ul>
<p><strong><font color="blue">Oh ya, Kejutan v.2.0 tetap  tidak menyediakan fasilitas cpanel atau yang sejenisnya. Harap maklum.</font></strong></li>
<li><strong>Berapa lama proses untuk mendapatkan kejutan ini?<br />
</strong>As Soon As Posible <img src="http://riyogarta.com/smilies/yahoo_smiley.gif" alt=":)" class="wp-smiley" title=":)" height="18" width="18" /> setelah 70 tiket laku <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_bigsmile.gif' alt=':d' class='wp-smiley' /> </li>
<li><strong>Dimana server kejutan ini diletakkan?</strong><br />
Yang jelas bukan di jalur IIX, tetapi performanya cukup baik ( kata saya sich <img src="http://riyogarta.com/smilies/yahoo_bigsmile.gif" alt=":d" class="wp-smiley" title=":d" height="18" width="18" /> ), contohnya ya blog ini saja atau blog tetangga sebelah <a href="http://yuliazmi.com/" target="_blank">yuliazmi.com</a>, atau <a href="http://situsfoto.net/" target="_blank">situsfoto.net</a>, atau … manalagi ya <img src="http://riyogarta.com/smilies/yahoo_think.gif" alt=":-?" class="wp-smiley" title=":-?" height="18" width="18" /> <img src="http://riyogarta.com/smilies/yahoo_dontknow.gif" alt=":-??" class="wp-smiley" title=":-??" height="18" width="40" /></li>
<li><strong>Bagaimana dengan yang tidak memiliki domain?<br />
</strong>Bagi Anda yang tidak memiliki domain, jangan khawatir <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_smiley.gif' alt=':)' class='wp-smiley' />  Kejutan v.2.0 kali ini akan menyediakan subdomain bagi Anda-anda yang tidak memiliki domain \:d/</li>
<li><strong>Lalu bagaimana dengan mereka yang telah mendapatkan kejutan 1GB (kejutan sebelumnya)?</strong><br />
Jangan khawatir, mereka akan langsung mendapat jatah di Kejutan 2.0 ini diluar 70 jumlah tiket yang telah sediakan <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' />  Tidak perlu membayar Rp. 15.000, kecuali kalau kepingin ikutan menyumbang <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_bigsmile.gif' alt=':d' class='wp-smiley' /> </li>
<li><strong>Bagaimana saya tahu masih ada berapa lagi tiket Kejutan 2.0 tersisa?</strong><br />
Silakan Anda lihat di halaman <a href="http://riyogarta.com/kejutan-20/" target="_blank">Kejutan 2.0</a>. Selain bisa melihat jumlah tiket yang masih tersedia, Anda juga bisa melihat siapa yang telah terdaftar sebagai pembeli tiket.</li>
</ol>
<p>Semoga bermanfaat.</p>
<blockquote><p><strong>Catatan:</strong></p>
<ul>
<li>Saya tidak menerima pendaftaran melalui email, silakan mendaftar dengan cara mengisi komentar pada posting ini.</li>
<li>Saya tidak melayani pertanyaan melalui email, silakan bertanya pada <a href="http://groups.yahoo.com/group/kejutan20/" target="_blank">milis</a> yang saya sediakan.</li>
<li>Bagi yang ingin memiliki domain, harga domain Rp. 65.000/tahun</li>
</ul>
<p>Terimakasih.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2007/07/29/kejutan-untuk-phpers-indonesia-versi-20/feed/</wfw:commentRss>
		<slash:comments>119</slash:comments>
		</item>
		<item>
		<title>Kejutan Untuk PHPers Indonesia</title>
		<link>http://riyogarta.com/2007/07/26/kejutan-untuk-phpers-indonesia/</link>
		<comments>http://riyogarta.com/2007/07/26/kejutan-untuk-phpers-indonesia/#comments</comments>
		<pubDate>Wed, 25 Jul 2007 17:03:15 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[PHP]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2007/07/26/kejutan-untuk-phpers-indonesia/</guid>
		<description><![CDATA[Saya ingat ketika untuk pertama kalinya belajar PHP, yang saya pikir saat itu adalah saya tidak memiliki web server untuk mempraktekkan apa yang akan saya pelajari. Dari situlah saya akhirnya mencari beberapa server gratisan yang mendukung PHP dan MySQL ( &#8230; waktu itu saya tidak tahu kalau hal tersebut bisa dipraktekan di PC menggunakan Apache/PHP/Mysql [...]]]></description>
			<content:encoded><![CDATA[<p>Saya ingat ketika untuk pertama kalinya belajar PHP, yang saya pikir saat itu adalah saya tidak memiliki web server untuk mempraktekkan apa yang akan saya pelajari. Dari situlah saya akhirnya mencari beberapa server gratisan yang mendukung PHP dan MySQL ( &#8230; waktu itu saya tidak tahu kalau hal tersebut bisa dipraktekan di PC menggunakan Apache/PHP/Mysql <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_laughloud.gif' alt=':))' class='wp-smiley' />  ). Tidak puas dengan itu semua, maka saya memberanikan diri dengan kocek pas-pasan  untuk menyewa sebuah hosting dan sebuah domain bernama Bedeng.com <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' />  Tetapi memang harus diakui, merupakan kebanggaan tersendiri ketika karya kita bisa terpampang di internet dan dilihat oleh banyak orang <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_bigsmile.gif' alt=':d' class='wp-smiley' /> </p>
<p><span id="more-416"></span>Saya cukup bersyukur dengan kondisi keuangan saya saat itu (ini jangan diartikan bahwa saya banyak uang lho &#8230;) sehingga bisa memiliki Bedeng.com, server tempat saya menimba ilmu khususnya PHP programming.  Nah, pada kesempatan ini, saya ingin sekali membantu mereka yang mempunyai keinginan keras untuk belajar PHP dan ingin memiliki hosting sendiri berikut domainnya. Saya akan memberikan secara cuma-cuma sebuah hosting dengan space 1GB bahkan lebih kepada siapa pun yang menginginkannya. Tentunya saya memiliki <strong>syarat</strong>, syaratnya adalah sebagai berikut:</p>
<ol>
<li><strong>Memiliki domain sendiri</strong> baik yang didapat secara gratis maupun berbayar. Yang penting bisa diubah DNS-nya. Dalam hal ini saya bisa membantu mereka yang ingin memiliki domain, tentunya tidak gratis. Sekedar info, domain harus dibayar pertahun dengan biaya kurang lebih Rp. 100.000 untuk domain dengan akhiran .com .org .net dan .info. Untuk yang .id saya belum tahu banyak berapa harganya.</li>
<li><strong>Memiliki keinginan (niat) yang kuat</strong> untuk belajar PHP dan yang berhubungan dengan PHP dengan tujuan positif. Ini seharusnya diletakkan sebagai syarat pertama <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /> </li>
<li><strong>Memiliki email aktif</strong> (baca: email yang selalu dilihat secara rutin).</li>
<li><strong>Berbagi ilmu</strong> adalah amal ibadah, maka setiap penerima kejutan ini diwajibkan memiliki blog yang diisi diantaranya dengan tulisan tentang hal-hal yang bermanfaat bagi siapapun khususnya bagi PHPers.</li>
<li><strong>Lolos seleksi</strong> yang dilakukan oleh saya <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_bigsmile.gif' alt=':d' class='wp-smiley' /> </li>
</ol>
<p>Lalu bagaimana mendapatkan kejutan ini? Caranya mudah:</p>
<ol>
<li>Anda memahami syarat-syarat diatas</li>
<li>Memberikan komentar pada posting ini dengan isi minimal:
<ul>
<li>Perkenalan siapa  diri Anda secara singkat dan jelas</li>
<li>Apa yang hendak Anda lakukan dengan memilki hosting sebesar 1GB atau lebih dengan memanfaatkan PHP.</li>
</ul>
</li>
</ol>
<p>Untuk tahap pertama, saya menyediakan account gratis hosting 1GB atau lebih hanya untuk 20 orang saja.</p>
<p>Sebelum ada yang tanya, maka saya buat dulu jawabannya <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /> </p>
<ol>
<li><strong>Sampai kapan hosting gratis tersebut bisa dipergunakan?</strong><br />
Selama saya masih mampu memberikannya pada Anda ( jadi Anda doakan saja saya selalu mampu <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' />  ). KECUALI jika Anda telah menyalahgunakan kepercayaan yang saya berikan, misalnya dengan menggunakannya sebagai situs dewasa, atau menyimpan data yang bertentangan dengan hukum dalam bentuk apa pun atau Anda menggunakannya sebagai apa pun yang tidak disukai hukum.</li>
<li><strong>Kenapa dibilang 1GB atau lebih?</strong><br />
Karena bisa jadi akan saya berikan lebih jika niat Anda untuk belajar PHP ternyata &#8211;setelah saya nilai&#8211; membutuhkan space yang lebih besar dari 1GB.</li>
<li><strong>Berapa Bandwidth yang diberikan untuk kejutan ini?</strong><br />
Untuk sementara, bandwith akan diberikan maksimum 5GB perbulan atau lebih.</li>
<li><strong>Apakah kejutan ini boleh dipergunakan untuk membangun situs e-commerce</strong><br />
Kalau sebatas membangun situs e-commerce (tentunya) menggunakan PHP silakan saja, ini namanya belajar. Tetapi jika kejutan ini lantas dipergunakan untuk situs yang bertujuan profit, mohon maaf, saya akan mencabut kejutan ini dari Anda. Kejutan ini ditujukan bagi mereka yang mau belajar tetapi memiliki keterbatasan (maaf) ekonomi,   jadi jika situs yang Anda bangun sudah memiliki profit, maka Anda bukan termasuk orang yang menjadi tujuan kejutan ini <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_smiley.gif' alt=':)' class='wp-smiley' /> </li>
<li><strong>PHP versi berapa yang disediakan kejutan ini?</strong><br />
Kejutan ini menyediakan dua buah versi PHP, versi 5.2.2 dan versi 4.4.7. Anda yang mendapatkan kejutan akan diberikan kebebasan untuk memilih satu diantaranya <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_smiley.gif' alt=':)' class='wp-smiley' /> </li>
<li><strong>Apakah ada dukungan untuk MySQL? Dan Berapa banyak database yang bisa kami buat?</strong><br />
Tentu saja ada yaitu MySQL versi 5. Database yang diberikan 2 yang digunakan masing-masing untuk blog dan untuk belajar PHP.</li>
<li><strong>Mmm, sebenarnya fasilitas apa saja sih yang diberikan kejutan hosting 1GB ini?</strong><br />
Oke, berikut daftar dari fasilitas yang akan saya sediakan untuk kejutan ini <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /> </p>
<ul>
<li>Disk Space 1GB atau lebih</li>
<li>Bandwith 5GB/bulan atau lebih</li>
<li>PHP versi 4/5</li>
<li>MySQL 5 dengan database maksimum 2 buah</li>
<li>PHPMyAdmin yang sudah terinstall</li>
<li>Satu account FTP user</li>
<li>Dua account email (Webmail/POP3) dengan domain yang Anda miliki</li>
<li>Backup file dan database ( hanya dipergunakan untuk keperluan darurat! Saya tidak mau direpotkan dengan permintaan restore dari Anda <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_silent.gif' alt='[-(' class='wp-smiley' />  )</li>
<li>Mmm, apalagi ya? <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_think.gif' alt=':-?' class='wp-smiley' />  Cukup sebegitu dulu <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_bigsmile.gif' alt=':d' class='wp-smiley' /> </li>
</ul>
<p><strong><font color="blue">Oh ya, kejutan ini tidak menyediakan fasilitas cpanel atau yang sejenisnya. Harap maklum.</font></strong></li>
<li><strong>Berapa lama proses untuk mendapatkan kejutan ini?<br />
</strong>As Soon As Posible <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_smiley.gif' alt=':)' class='wp-smiley' /> </li>
<li><strong>Dimana server kejutan ini diletakkan?</strong><br />
Yang jelas bukan di jalur IIX, tetapi performanya cukup baik ( kata saya sich <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_bigsmile.gif' alt=':d' class='wp-smiley' />  ), contohnya ya blog ini saja atau blog tetangga sebelah <a href="http://yuliazmi.com" target="_blank">yuliazmi.com</a>, atau <a href="http://situsfoto.net" target="_blank">situsfoto.net</a>, atau &#8230; manalagi ya <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_think.gif' alt=':-?' class='wp-smiley' />  <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_dontknow.gif' alt=':-??' class='wp-smiley' /> </li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2007/07/26/kejutan-untuk-phpers-indonesia/feed/</wfw:commentRss>
		<slash:comments>59</slash:comments>
		</item>
		<item>
		<title>Code Name Bandung Finished</title>
		<link>http://riyogarta.com/2007/06/16/code-name-bandung-finished/</link>
		<comments>http://riyogarta.com/2007/06/16/code-name-bandung-finished/#comments</comments>
		<pubDate>Sat, 16 Jun 2007 09:21:16 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[PHP]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2007/06/16/code-name-bandung-finished/</guid>
		<description><![CDATA[Bandung adalah PHP Framework yang dibuat untuk memudahkan para developer dalam membangun aplikasi berbasis web, baik aplikasi berskala kecil maupun aplikasi berskala besar. Dibuat dan dipikirkan lebih dari 5 tahun setelah pembuatnya belajar dari kesalahan yang dilakukan pada script BedengPSP (baca: BedengPSP .. Gila). Semula, Bandung ini dibuat hanya untuk kepentingan pembuatan content management system [...]]]></description>
			<content:encoded><![CDATA[<p>Bandung adalah PHP Framework yang dibuat untuk memudahkan para developer dalam membangun aplikasi berbasis web, baik aplikasi berskala kecil maupun aplikasi berskala besar. Dibuat dan dipikirkan lebih dari 5 tahun setelah pembuatnya belajar dari kesalahan yang dilakukan pada script BedengPSP (baca: <a href="http://riyogarta.com/2005/12/05/bedengpsp-gilaaa/">BedengPSP .. Gila</a>).</p>
<p>Semula, Bandung ini dibuat hanya untuk kepentingan pembuatan content management system (CMS), tetapi lambat laun akhirnya berubah menjadi framework yang mungkin paling unik didunia <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><span id="more-404"></span></p>
<p>Adapun kelebihan Framework ini adalah kemudahan dalam mengaktifkan dan menonaktifkan modul-modul yang sudah dibuat dalam bentuk extension, sehingga aplikasi dapat dibuat dalam modul-modul yang siap dilepas dan dipasang hanya dengan satu klik <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_smiley.gif' alt=':)' class='wp-smiley' /> </p>
<p>Selain itu, Bandung dirancang agar programmer dapat memaksimalkan daya ciptanya tanpa terlalu dibebani oleh aturan main dari framework itu sendiri. Hal ini merupakan &#8220;jalan keluar&#8221; dari kesulitan yang biasa dialami para developer yang mempekerjakan  banyak programmer dalam sebuah project. Masing-masing programmer hanya berkonsentrasi dengan tujuan modul tanpa mempedulikan faktor sekuritas yang sudah dihandle oleh framework. Bandung juga memungkinkan para programmer untuk menggunakan framework lainnya dalam membuat modul seperti <a href="http://smarty.php.net/" target="_blank">smarty</a>, <a href="http://www.fusebox.org/" target="_blank">fusebox</a> dsb.</p>
<p>Intinya, <strong>Bandung</strong> adalah framework yang hanya melakukan tugas untuk menyatukan banyak modul dengan tujuan sama atau pun berbeda, yang dibuat oleh satu atau lebih programmer dengan menggunakan berbagai framework atau tanpa framework lainnya dalam sebuah wadah yang solid.</p>
<p>Akhir kata, setelah melalui perjalanan yang cukup panjang dan melelahkan, kiranya sekarang saatnya untuk framework yang saya beri nama Bandung ini bisa menghasilkan sesuatu yang bermanfaat. Bermanfaat bagi saya terutama dan <a href="http://riyogarta.com/my-company/">perusahaan yang saya pimpin</a> beserta kawan-kawan.</p>
<p><s>Di copy paste dari <a href="http://bdg.bedeng.com/about/" target="_blank">Bandung About</a></s></p>
<p>Posting sebelumnya: <a href="http://riyogarta.com/2006/10/11/code-name-bandung/">Code Name Bandung</a></p>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2007/06/16/code-name-bandung-finished/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Membuat Aplikasi PHP Yang Aman Bag. 2</title>
		<link>http://riyogarta.com/2006/09/02/membuat-aplikasi-php-yang-aman-bag-2/</link>
		<comments>http://riyogarta.com/2006/09/02/membuat-aplikasi-php-yang-aman-bag-2/#comments</comments>
		<pubDate>Sat, 02 Sep 2006 03:55:49 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[PHP]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2006/09/02/membuat-aplikasi-php-yang-aman-bag-2/</guid>
		<description><![CDATA[Sambungan dari: Membuat Aplikasi PHP Yang Aman Bag. 1 2. Pergunakan Anti SQL Injection SQL Injection merupakan teknik menyusupkan perintah SQL kedalam query dengan cara memanipulasi input data pada sebuah aplikasi. Anda bisa membaca dan mempelajari bagaimana SQL injection dapat terjadi di SQL Injetion Attack by Example. Bagaimana menanggulanginya? Berikut adalah fungsi Anti SQL Injection [...]]]></description>
			<content:encoded><![CDATA[<p>Sambungan dari:<br />
<a href="http://riyogarta.com/2006/08/29/membuat-aplikasi-php-yang-aman-bag-1/">Membuat Aplikasi PHP Yang Aman Bag. 1</a></p>
<p><strong>2. Pergunakan Anti SQL Injection</strong></p>
<p>SQL Injection merupakan teknik menyusupkan perintah SQL kedalam query dengan cara memanipulasi input data pada sebuah aplikasi. Anda bisa membaca dan mempelajari bagaimana SQL injection dapat terjadi di <a href="http://www.unixwiz.net/techtips/sql-injection.html" target="_blank">SQL Injetion Attack by Example</a>.</p>
<p><span id="more-265"></span></p>
<p>Bagaimana menanggulanginya? Berikut adalah fungsi Anti SQL Injection yang sering saya pergunakan.</p>
<div class="igBar"><span id="lphp-5"><a href="#" onclick="javascript:showPlainTxt('php-5'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">PHP:</span>
<div id="php-5">
<div class="php">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#000000; font-weight:bold;">function</span> anti_sql_injection<span style="color:#006600; font-weight:bold;">&#40;</span> <span style="color:#0000FF;">$input</span> <span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span>&nbsp; &nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color:#FF9933; font-style:italic;">// daftarkan perintah-perintah SQL yang tidak boleh ada </span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color:#FF9933; font-style:italic;">// dalam query dimana SQL Injection mungkin dilakukan</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color:#0000FF;">$aforbidden</span> = <a href="http://www.php.net/array"><span style="color:#000066;">array</span></a> <span style="color:#006600; font-weight:bold;">&#40;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color:#FF0000;">"insert"</span>, <span style="color:#FF0000;">"select"</span>, <span style="color:#FF0000;">"update"</span>, <span style="color:#FF0000;">"delete"</span>, <span style="color:#FF0000;">"truncate"</span>, </div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color:#FF0000;">"replace"</span>, <span style="color:#FF0000;">"drop"</span>, <span style="color:#FF0000;">" or "</span>, <span style="color:#FF0000;">";"</span>, <span style="color:#FF0000;">"#"</span>, <span style="color:#FF0000;">"--"</span>, <span style="color:#FF0000;">"="</span> <span style="color:#006600; font-weight:bold;">&#41;</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color:#FF9933; font-style:italic;">// lakukan cek, input tidak mengandung perintah yang tidak boleh</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color:#0000FF;">$breturn</span>=<span style="color:#000000; font-weight:bold;">true</span>;&nbsp; &nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color:#616100;">foreach</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$aforbidden</span> <span style="color:#616100;">as</span> <span style="color:#0000FF;">$cforbidden</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#616100;">if</span><span style="color:#006600; font-weight:bold;">&#40;</span>strripos<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$input</span>, <span style="color:#0000FF;">$cforbidden</span><span style="color:#006600; font-weight:bold;">&#41;</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#0000FF;">$breturn</span>=<span style="color:#000000; font-weight:bold;">false</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#616100;">break</span>;&nbsp; &nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color:#006600; font-weight:bold;">&#125;</span>&nbsp; &nbsp; </div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color:#006600; font-weight:bold;">&#125;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color:#616100;">return</span> <span style="color:#0000FF;">$breturn</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Cara memanfaatkan fungsi tersebut adalah sebagai berikut (contoh pada proses login dimana SQL injection kerap dilakukan)</p>
<div class="igBar"><span id="lphp-6"><a href="#" onclick="javascript:showPlainTxt('php-6'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">PHP:</span>
<div id="php-6">
<div class="php">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#616100;">if</span><span style="color:#006600; font-weight:bold;">&#40;</span>anti_sql_injection<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$_POST</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'user'</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#41;</span> and </div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;anti_sql_injection<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$_POST</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'password'</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#41;</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color:#FF9933; font-style:italic;">// lakukan proses login</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span> <span style="color:#616100;">else</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<a href="http://www.php.net/die"><span style="color:#000066;">die</span></a><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">&#41;</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Selain itu, SQL injection juga dapat dicegah dengan pengaturan priveleges pada database yang dipergunakan. Misalnya, bagian situs yang hanya berfungsi memperlihatkan data melalui query select menggunakan user dengan privelege select saja. Bagian situs yang berfungsi untuk memberi kesempatan pembaca untuk berkomentar menggunakan user dengan privelege insert saja dst. </p>
<p><strong>3. Pergunakan session_regenerate_id() Untuk Pembuatan Session</strong></p>
<p>Selintas penggunaan session adalah teknik yang aman untuk menjaga sebuah halaman agar tidak bisa dikunjungi oleh sembarang orang. Misalnya, pemanfaatan session untuk halaman administrasi sebuah situs. Namun, session pun memiliki titik kelemahan yang bisa dieksploitasi <em>attacker</em> dan dipergunakan sebagai senjata untuk menyerang sistem aplikasi. </p>
<p>Cara paling mudah untuk memanfaatkan session sebagai titik kelemahan sistem aplikasi adalah menggunakan metode <em>fixation</em>. Session faxation adalah metode dimana seorang <em>attacker</em> menyerang browser user sebelum login dilakukan. Yaitu dengan memasukkan <em>id session</em> untuk kemudian dimanfaatkan dengan tujuan tertentu.</p>
<p>Berikut adalah ilustrasi bagaimana session fixation dilakukan untuk menyerang keamanan sistem aplikasi berbasis web.</p>
<div class="igBar"><span id="lphp-7"><a href="#" onclick="javascript:showPlainTxt('php-7'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">PHP:</span>
<div id="php-7">
<div class="php">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><a href="http://www.php.net/session_start"><span style="color:#000066;">session_start</span></a><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">&#41;</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#616100;">if</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$_SESSION</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'id_user'</span><span style="color:#006600; font-weight:bold;">&#93;</span>&lt;&gt;<span style="color:#CC66CC;color:#800000;">13</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<span style="color:#FF9933; font-style:italic;">// Proses login (authentifikasi)</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<span style="color:#FF9933; font-style:italic;">// Jika login sukses, jalankan perintah dibawah ini</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<span style="color:#0000FF;">$_SESSION</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'id_user'</span><span style="color:#006600; font-weight:bold;">&#93;</span>=<span style="color:#CC66CC;color:#800000;">13</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span> <span style="color:#616100;">else</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; <span style="color:#616100;">if</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$_SESSION</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'id_user'</span><span style="color:#006600; font-weight:bold;">&#93;</span>==<span style="color:#CC66CC;color:#800000;">13</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; <span style="color:#FF9933; font-style:italic;">// lakukan proses A</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Script diatas adalah bagian dimana variable id_user (13) didaftarkan sebagai variable session JIKA pengunjung belum login dan login yang dilakukan sukses. Artinya, jika login pernah dilakukan maka halaman ini tidak akan melakukan proses login dan langsung melakukan proses A.</p>
<p>Langkah selanjutnya, pastikan bahwa browser yang digunakan bersih dari session sebelumnya. Lalu ketikan alamat script diatas dengan menambahkan PHPSESSID=1804. </p>
<p>Misalnya nama file script diatas adalah test.php dan diletakkan di server.com, maka yang harus Anda tuliskan adalah <u>http://server.com/test.php?PHPSESSID=1804</u> dan lakukan login. Setelah itu, silakan Anda mencoba mengakses alamat tersebut diatas menggunakan browser lain atau komputer lain yang terhubung dengan server.com. Hasilnya, Anda akan melakukan proses A tanpa melakukan login!</p>
<p>Hal diatas terjadi akibat <em>id session</em> yang dipergunakan saat session dibentuk adalah sama dengan <em>id session</em> yang sebelumnya telah diketikkan secara "paksa" dalam URL. Untuk menanggulangi hal ini, diperlukan fungsi untuk meng-generate ulang <em>id session</em> yaitu dengan menggunakan fungsi <em>session_regenerate_id()</em> sehingga bagian script diatas menjadi seperti dibawah ini:</p>
<div class="igBar"><span id="lphp-8"><a href="#" onclick="javascript:showPlainTxt('php-8'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">PHP:</span>
<div id="php-8">
<div class="php">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><a href="http://www.php.net/session_start"><span style="color:#000066;">session_start</span></a><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">&#41;</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#616100;">if</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$_SESSION</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'id_user'</span><span style="color:#006600; font-weight:bold;">&#93;</span>&lt;&gt;<span style="color:#CC66CC;color:#800000;">13</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<span style="color:#FF9933; font-style:italic;">// Proses login (authentifikasi)</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<span style="color:#FF9933; font-style:italic;">// Jika login sukses, jalankan perintah dibawah ini</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<a href="http://www.php.net/session_regenerate_id"><span style="color:#000066;">session_regenerate_id</span></a><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">&#41;</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<span style="color:#0000FF;">$_SESSION</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'id_user'</span><span style="color:#006600; font-weight:bold;">&#93;</span>=<span style="color:#CC66CC;color:#800000;">13</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span> <span style="color:#616100;">else</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; <span style="color:#616100;">if</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$_SESSION</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'id_user'</span><span style="color:#006600; font-weight:bold;">&#93;</span>==<span style="color:#CC66CC;color:#800000;">13</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; <span style="color:#FF9933; font-style:italic;">// lakukan proses A</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Secara <em>default</em>, penggunaan fungsi <em>session_regenerate_id()</em> tidak serta merta akan menghapus session sebelumnya secara otomatis. Agar <em>session_regenerate_id() </em> menghapus/menghancurkan session sebelumnya, Anda perlu menambahkan parameter boolean true pada fungsi tersebut. Sayangnya, parameter ini hanya bisa digunakan untuk PHP dengan versi 5.1.0 keatas.</p>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2006/09/02/membuat-aplikasi-php-yang-aman-bag-2/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Membuat Aplikasi PHP Yang Aman Bag. 1</title>
		<link>http://riyogarta.com/2006/08/29/membuat-aplikasi-php-yang-aman-bag-1/</link>
		<comments>http://riyogarta.com/2006/08/29/membuat-aplikasi-php-yang-aman-bag-1/#comments</comments>
		<pubDate>Mon, 28 Aug 2006 22:16:43 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[PHP]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2006/08/29/membuat-aplikasi-php-yang-aman-bag-1/</guid>
		<description><![CDATA[Vulnerabilities atau kelemahan keamanan pada aplikasi berbasis web menggunakan PHP merupakan issue yang tak habis-habisnya dibahas. Tulisan kali ini berisi tip dan trik membuat aplikasi PHP yang aman. 1. Perhatikan Register Global selalu dalam kondisi OFF. Sebenarnya tidaklah selalu benar bahwa jika register global berkondisi on lantas aplikasi PHP yang dibuat tidak aman. Ini semua [...]]]></description>
			<content:encoded><![CDATA[<p>Vulnerabilities atau kelemahan keamanan pada aplikasi berbasis web menggunakan PHP merupakan <em>issue</em> yang tak habis-habisnya dibahas. Tulisan kali ini berisi tip dan trik membuat aplikasi PHP yang aman.</p>
<p><span id="more-262"></span></p>
<p><u><strong>1. Perhatikan Register Global selalu dalam kondisi OFF.</strong></u></p>
<p>Sebenarnya tidaklah selalu benar bahwa jika register global berkondisi on lantas aplikasi PHP yang dibuat tidak aman. Ini semua bergantung kepada bagaimana seorang programmer membuat script-nya.</p>
<p>Berikut contoh kelemahan keamanan yang disebabkan oleh kesalahan dalam penulisan script yang mengakibatkan penyerang dapat dengan mudah memanfaatkan register global berkondisi on.</p>
<div class="igBar"><span id="lphp-12"><a href="#" onclick="javascript:showPlainTxt('php-12'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">PHP:</span>
<div id="php-12">
<div class="php">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#FF9933; font-style:italic;">// lokasi script: http://localhost/login.php</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#FF9933; font-style:italic;">// script login yang dipanggil dari sebuah form untuk masuk kedalam halaman Admin</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#FF9933; font-style:italic;">// set variable $oke manjadi true jika autentifikasi sukses</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#616100;">if</span> <span style="color:#006600; font-weight:bold;">&#40;</span>authentifikasi<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$_POST</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'user'</span><span style="color:#006600; font-weight:bold;">&#93;</span>,<span style="color:#0000FF;">$_POST</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'password'</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<span style="color:#0000FF;">$oke</span>=<span style="color:#000000; font-weight:bold;">true</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#616100;">if</span> <span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$oke</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<span style="color:#FF9933; font-style:italic;">// masuk ke halaman admin</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Sekilas kode script diatas adalah kode yang aman, tetapi sebenarnya sama sekali tidak dengan kondisi register global on. Mengapa? Halaman Admin bisa diakses oleh siapa pun tanpa proses authentifikasi melalui alamat <u>http://localhost/login.php?oke=true</u>.</p>
<p>Bagaimana memperbaiki script diatas? Anda cukup menambahkan inisialisasi diawal seperti berikut:</p>
<div class="igBar"><span id="lphp-13"><a href="#" onclick="javascript:showPlainTxt('php-13'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">PHP:</span>
<div id="php-13">
<div class="php">
<ol start="5">
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#FF9933; font-style:italic;">// Inisialisasi variable $oke</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#0000FF;">$oke</span>=<span style="color:#000000; font-weight:bold;">false</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#616100;">if</span> <span style="color:#006600; font-weight:bold;">&#40;</span>authentifikasi<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$_POST</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'user'</span><span style="color:#006600; font-weight:bold;">&#93;</span>,<span style="color:#0000FF;">$_POST</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'password'</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<span style="color:#0000FF;">$oke</span>=<span style="color:#000000; font-weight:bold;">true</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>atau </p>
<div class="igBar"><span id="lphp-14"><a href="#" onclick="javascript:showPlainTxt('php-14'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">PHP:</span>
<div id="php-14">
<div class="php">
<ol start="5">
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#616100;">if</span> <span style="color:#006600; font-weight:bold;">&#40;</span>authentifikasi<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$_POST</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'user'</span><span style="color:#006600; font-weight:bold;">&#93;</span>,<span style="color:#0000FF;">$_POST</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#FF0000;">'password'</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">&#123;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<span style="color:#0000FF;">$oke</span>=<span style="color:#000000; font-weight:bold;">true</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span> <span style="color:#616100;">else</span>&nbsp; <span style="color:#006600; font-weight:bold;">&#123;</span> <span style="color:#FF9933; font-style:italic;">// jika authentifikasi gagal, set variable $oke menjadi false</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp;<span style="color:#0000FF;">$oke</span>=<span style="color:#000000; font-weight:bold;">false</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color:#006600; font-weight:bold;">&#125;</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Contoh script diatas adalah salah satu dari kelemahan keamanan yang disebabkan oleh register global berkondisi on. Di sisi lain, programmer juga harus turut menanggung dosa akibat   teknik programmingnya yang membuka kesempatan penyerang untuk mengeksploitasi kelemahan keamanan.</p>
<p>Teknik lain untuk mengamankan aplikasi dari ancaman register global berkondisi on adalah menerapkan apa yang disebut <a href="http://en.wikipedia.org/wiki/Security_through_obscurity" target="_blank">security throuh obscurity</a> (keamanan dengan teknik penyembunyian). Hanya saja, kelemahan keamanan  akan segera ditemukan jika aplikasi dibuat menjadi aplikasi opensource, dimana calon penyerang dapat melihat sourcecode-nya secara langsung.</p>
<p>Jadi memang tidak benar 100% kalau kelemahan keamanan aplikasi PHP bermula dari register global berkondisi on. Ekploitasi kelemahan keamanan sistem hanya terjadi akibat kesalahan teknik dalam pembuatan program, dan karena aplikasi dibuat menjadi <em>opensource</em> yang memungkinkan calon penyerang melihat <em>sourcecode</em> nya secara langsung.  </p>
<p>Terlepas dari semua itu, programmer haruslah memiliki <em>security mind</em> yang memadai dalam membuat aplikasi, apalagi jika memiliki niat untuk membuatnya menjadi aplikasi <em>opensource</em>. Tetapi programmer juga manusia yang tak luput dari kesalahan. Jadi 100% PHP tidak salah melakukan keputusan untuk membuat default register global berkondisi off sejak versi 4.2.0.</p>
<p>Bersambung ke <a href="http://riyogarta.com/2006/09/02/membuat-aplikasi-php-yang-aman-bag-2/">Membuat Aplikasi PHP Yang Aman Bag. 2</a></p>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2006/08/29/membuat-aplikasi-php-yang-aman-bag-1/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
		<item>
		<title>Panduan Belajar PHP</title>
		<link>http://riyogarta.com/2006/08/26/panduan-belajar-php/</link>
		<comments>http://riyogarta.com/2006/08/26/panduan-belajar-php/#comments</comments>
		<pubDate>Fri, 25 Aug 2006 23:21:09 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[PHP]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2006/08/26/panduan-belajar-php/</guid>
		<description><![CDATA[Bermula dari pertanyaan seseorang mengenai bagaimana belajar PHP, maka saya tuliskan beberapa langkah dibawah ini sebagai panduan untuk mempelajari PHP. Semoga bermanfaat. Catatan: database yang digunakan adalah MySQL. PHP sebagai server side scripting secara umum digunakan untuk membuat situs dinamis atau aplikasi berbasis web. Jadi langkah awal untuk mempelajari PHP adalah menguasai HTML terlebih dahulu. [...]]]></description>
			<content:encoded><![CDATA[<p>Bermula dari pertanyaan seseorang mengenai bagaimana belajar PHP, maka saya tuliskan beberapa langkah dibawah ini sebagai panduan untuk mempelajari PHP. Semoga bermanfaat.</p>
<p><em>Catatan: database yang digunakan adalah MySQL.</em></p>
<p><span id="more-259"></span></p>
<ol>
<li>PHP sebagai server side scripting secara umum digunakan untuk membuat situs dinamis atau aplikasi berbasis web. Jadi langkah awal untuk mempelajari PHP adalah menguasai HTML terlebih dahulu. Tanpa penguasaan HTML dasar, rasanya PHP kurang bermanfaat untuk dipelajari.Links untuk belajar HTML
<ul>
<li><a href="http://www.w3schools.com/html/default.asp" target="_blank">http://www.w3schools.com/html/default.asp</a></li>
<li><a href="http://www.html.net/tutorials/html/" target="_blank">http://www.html.net/tutorials/html/</a></li>
<li><a href="http://www.w3.org/TR/1998/REC-html40-19980424/" target="_blank">http://www.w3.org/TR/1998/REC-html40-19980424/</a></li>
</ul>
</li>
<li>PHP adalah bahasa pemrograman, artinya untuk menguasai PHP haruslah mengerti <a href="http://id.wikipedia.org/wiki/Algoritma">algoritma</a>. Minimal yang harus diketahui untuk hal ini adalah apa dan bagaimana menggunakan variable, kondisi atau pencabangan, perulangan dan sub-rutin untuk menyelesaikan suatu masalah. Saat ini sudah banyak buku yang membahas mengenai algoritma dan pemrograman, silakan cari dan pilih sendiri.</li>
<li>Install <a href="http://www.apache.org/" target="_blank">Apache</a>, <a href="http://www.php.net/" target="_blank">PHP</a> dan <a href="http://www.mysql.com/" target="_blank">MySQL</a> pada PC Anda. Saya menyarankan untuk tidak menggunakan installer yang instant (seperti <a href="http://sourceforge.net/projects/phptriad" target="_blank">PHPTriad</a>, <a href="http://www.wampserver.com/en/download.php" target="_blank">Wampserver</a>, <a href="http://www.e-novative.info/software/wamp.php" target="_blank">e-novative</a> dsb), tetapi lebih baik belajar dan mencoba menginstallnya satu demi satu diawali dari Apache, lalu PHP dan MySQL.Link panduan menginstal Apache, PHP dan MySQL
<ul>
<li>PHP4 <a href="http://www.php-mysql-tutorial.com/install-apache-php-mysql.php" target="_blank">http://www.php-mysql-tutorial.com/install-apache-php-mysql.php</a></li>
<li>PHP5 <a href="http://www.webmasterstop.com/86.html" target="_blank">http://www.webmasterstop.com/86.html</a></li>
</ul>
</li>
<li>Setelah langkah 1 &amp; 2 sudah dipelajari dan sudah dimengerti (meskipun hanya sedikit) dan langkah 3 sudah bisa Anda lalui. Langkah berikutnya adalah mempelajari sintaks-sintaks dari PHP dan Anda wajib memiliki atau mendownload <a href="http://www.php.net/download-docs.php" target="_blank">file Help PHP</a>.Link untuk belajar PHP
<ul>
<li><a href="http://www.w3schools.com/php/default.asp" target="_blank">http://www.w3schools.com/php/default.asp</a></li>
</ul>
</li>
<li>Coba untuk membuat form isian sederhana menggunakan PHP beserta HTML yang telah dikuasai. Lalu, tambahkan fitur validasi untuk beberapa atau semua data sehingga tidak boleh kosong saat submit ditekan.Links Tutorial membuat form
<ul>
<li><a href="http://www.tizag.com/phpT/forms.php" target="_blank">http://www.tizag.com/phpT/forms.php</a></li>
<li><a href="http://www.htmlcenter.com/tutorials/tutorials.cfm/149/PHP/" target="_blank">http://www.htmlcenter.com/tutorials/tutorials.cfm/149/PHP/</a></li>
</ul>
</li>
<li>Pelajari juga teknik session dan atau cookies. Ini penting dan sangat sering digunakan dalam pembuatan situs dinamis atau aplikasi berbasi web. Pada langkah ini, minimal Anda bisa membuat halaman login dengan user dan password yang masih ditulis secara hardcode dalam script.Links tutorial session dan cookies
<ul>
<li><a href="http://www.phptutorial.info/learn/session.php" target="_blank">http://www.phptutorial.info/learn/session.php</a></li>
<li><a href="http://www.freewebmasterhelp.com/tutorials/cookies" target="_blank">http://www.freewebmasterhelp.com/tutorials/cookies</a></li>
</ul>
</li>
<li>Langkah berikutnya adalah mempelajar seluk beluk mengenai database seperti apa itu <a href="http://id.wikipedia.org/wiki/Database" target="_blank">database</a>, table, record, field dsb. Download dan pergunakan <a href="http://www.phpmyadmin.net/" target="_blank">phpMyAdmin</a> untuk mencoba membuat database, table dan field-fieldnya.</li>
<li>Pelajari SQL khusus untuk empat perintah dasar yaitu SELECT, INSERT, UPDATE dan DELETE. Perintah SELECT adalah perintah SQL yang paling kompleks karena meliputi klausa JOIN (INNER/OUTER), WHERE, GROUP BY, HAVING, ORDER BY dan LIMIT (limit adalah klausa yang diperkenalkan MySQL).Link tutorial SQL
<ul>
<li><a href="http://www.w3schools.com/sql/default.asp" target="_blank">http://www.w3schools.com/sql/default.asp</a></li>
<li><a href="http://www.webdevelopersnotes.com/tutorials/sql/index.php3" target="_blank">http://www.webdevelopersnotes.com/tutorials/sql/index.php3</a></li>
</ul>
</li>
<li>Setelah perintah SQL bisa Anda mengerti (syukur-syukur menguasai), maka pelajari bagaimana PHP berinteraksi dengan MySQL. Pada langkah ini, Anda diharuskan menguasai fungsi-fungsi wajib sehubungan dengan MySQL, yaitu mysql_connect_db, mysql_select_db, mysql_query dan mysql_fetch_object / mysql_fetch_array.<a href="http://dev.mysql.com/doc/" target="_blank">Download Help MySQL</a>.</li>
<li>Sampai disini, coba untuk membuat script sederhana untuk input data menggunakan form. Data yang diinput melalui form disimpan dalam database (INSERT). Lalu buat juga script untuk menampilkan data-data yang telah tersimpan dalam database (SELECT). Selanjutnya, buat fasilitas untuk mmenghapus (DELETE) dan mengedit data (UPDATE).</li>
<li>Coba membuat halaman login dimana user dan passwordnya dibaca dari database</li>
<li>Coba gabungkan karya nomor 10 dan 11 sehingga hanya mereka yang login saja yang bisa menghapus/mengedit data.</li>
<li>Sampai disini, Anda bisa dikatakan sudah sampai pada tahap <span style="color: #0000ff;">beginner</span>. Selanjutnya banyak-banyaklah bereksperimen dengan membuat proyek-proyek kecil minimal untuk kesenangan Anda sendiri. Saat Anda mengerjakan proyek, disanalah pelajaran demi pelajaran bisa Anda dapat dari berbagai masalah yang muncul.</li>
<li>Selanjutnya, Anda harus mulai mempelajari masalah security seperti masalah <a href="http://en.wikipedia.org/wiki/Code_injection">Code</a>/<a href="http://en.wikipedia.org/wiki/Sql_injection" target="_blank">SQL Injection</a>, <a href="http://en.wikipedia.org/wiki/Session_hijacking" target="_blank">session hijacking</a>, <a href="http://en.wikipedia.org/wiki/Session_fixation" target="_blank">session fixation</a>, teknik enkripsi dsb.</li>
<li>Sempatkan untuk belajar Javascript saat Anda merasa kemampuan PHP yang dimiliki sudah lumayan. Kelemahan dari script PHP adalah tidak dimungkinkannya interaksi pengguna secara on the fly. Nah, kekurangannya inilah yang di "tambal" menggunakan Javascript. Syukur-syukur Anda bisa menguasai AJAX.Link tutorial Javascript
<ul>
<li><a href="http://www.w3schools.com/js/default.asp" target="_blank">http://www.w3schools.com/js/default.asp</a></li>
</ul>
</li>
<li>Sempatkan pula untuk mempelajari CSS. Ini penting untuk membuat tampilan/interface situs atau web-based application secara lebih baik.Link tutorial CSS:
<ul>
<li><a href="http://www.w3schools.com/css/default.asp" target="_blank">http://www.w3schools.com/css/default.asp</a></li>
</ul>
</li>
<li>Terakhir. Karena PHP lebih banyak hidup di OS Linux, pelajari juga linux barang sedikit. Syukur-syukur kalo Anda ternyata sejak awal belajar di linux</li>
</ol>
<p>TIPS:</p>
<ul>
<li>Jangan terlalu memaksakan untuk menghapalkan fungsi, sintaks dari PHP atau MySQL. Manfaatkan file HELP dalam praktek dan latihan. Semakin Anda sering praktek dan melatih diri, maka fungsi dan sintaks yang sering dipakai akan bisa Anda hapal dengan sendirinya.</li>
<li>Jangan terlalu cepat untuk mengambil keputusan untuk bertanya terhadap masalah atau kesulitan yang timbul. Bertanyalah setelah Anda mencoba terlebih dahulu.</li>
<li>Rajin-rajin mengikuti milis atau forum dan selalu ingat, diatas langit ada langit <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_wink.gif' alt=';)' class='wp-smiley' /> </li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2006/08/26/panduan-belajar-php/feed/</wfw:commentRss>
		<slash:comments>149</slash:comments>
		</item>
		<item>
		<title>PHPUG.or.id</title>
		<link>http://riyogarta.com/2006/08/26/phpugorid/</link>
		<comments>http://riyogarta.com/2006/08/26/phpugorid/#comments</comments>
		<pubDate>Fri, 25 Aug 2006 22:12:35 +0000</pubDate>
		<dc:creator>Riyogarta</dc:creator>
				<category><![CDATA[Diary]]></category>
		<category><![CDATA[PHP]]></category>
		<guid isPermaLink="false">http://riyogarta.com/2006/08/26/phpugorid/</guid>
		<description><![CDATA[Tidak terasa, sudah 6 tahun yang lalu ketika saya mulai getol belajar PHP, saya menemukan milis phpug@yahoogroups.com. Dari milis inilah saya banyak sekali belajar mengenai PHP. Sekarang, setelah 6 tahun berlalu, rasa kangen untuk kembali mengunjungi dan aktif pada milis yang telah berjasa mengajari saya PHP ini muncul. Akhirnya, setelah kurang lebih 4 tahun message [...]]]></description>
			<content:encoded><![CDATA[<p>Tidak terasa, sudah 6 tahun yang lalu ketika saya mulai getol belajar PHP, saya menemukan milis <a target="_blank" href="http://groups.yahoo.com/group/phpug/">phpug@yahoogroups.com</a>. Dari milis inilah saya banyak sekali belajar mengenai PHP. Sekarang, setelah 6 tahun berlalu, rasa kangen untuk kembali mengunjungi dan aktif pada milis yang telah berjasa mengajari saya PHP ini muncul. Akhirnya, setelah kurang lebih 4 tahun <em>message delivery</em>-nya berstatus <em>No Email</em>, tanggal 11 kemarin saya ubah menjadi <em>Individual Emails</em> <img src='http://riyogarta.com/wp-includes/images/smilies/yahoo_smiley.gif' alt=':)' class='wp-smiley' /> Â  ... dan mulailah saya menerima email dari milis yang ternyata telah berubah nama subject-nya menjadi KPHPI.</p>
<p>Hari ini, saya dipercaya untuk membuat situs KPHPI oleh rekan milis yang ternyata sudah menyediakan domain berikut hostingnya sejak lama.Â  Akhirnya, jadilahÂ  <a target="_blank" href="http://www.phpug.or.id">http://www.phpug.or.id</a> yang masih sangat sederhana.  Dibuat menggunakan WordPress 2.04, situs ini diharapkan bisa mewakili komunitas pengguna PHP Indonesia.</p>
<p>Semoga <a target="_blank" href="http://www.phpug.or.id">PHPUG.or.id</a> bisa bermanfaat bagi masyarakat teknologi informasi Indonesia pada umumnya dan pengguna PHP Indonesia pada khususnya.</p>
]]></content:encoded>
			<wfw:commentRss>http://riyogarta.com/2006/08/26/phpugorid/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

