<?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>Rosihan Ari`s Blog</title>
	<atom:link href="http://blog.rosihanari.net/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.rosihanari.net</link>
	<description>Ketika ilmu tidak sekedar teori...</description>
	<lastBuildDate>Sat, 13 Mar 2010 06:59:57 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Penggunaan USER AGENT Untuk Konten Mobile</title>
		<link>http://blog.rosihanari.net/penggunaan-user-agent-untuk-konten-mobile</link>
		<comments>http://blog.rosihanari.net/penggunaan-user-agent-untuk-konten-mobile#comments</comments>
		<pubDate>Thu, 04 Mar 2010 23:16:44 +0000</pubDate>
		<dc:creator>rosihanari</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[aplikasi mobile]]></category>
		<category><![CDATA[php mobile]]></category>
		<category><![CDATA[php script mobile]]></category>
		<category><![CDATA[user agent]]></category>
		<category><![CDATA[user agent mobile php]]></category>

		<guid isPermaLink="false">http://blog.rosihanari.net/?p=1254</guid>
		<description><![CDATA[Blog ini telah dilengkapi dengan tampilan mobile friendly bagi pengunjung setia yang sering mengakses via handphone. Secara otomatis blog ini akan mengarahkan (redirecting) tampilan ke mode mobile friendly bila sedang diakses via handphone. Bila Anda perhatikan, tampilan blog dalam mode mobile friendly ini lebih sederhana dibandingkan tampilan sebenarnya. Anda bisa lihat seperti apa tampilan blog [...]


Related posts:<ol><li><a href='http://blog.rosihanari.net/penggunaan-function-ereg-di-php-untuk-pattern-matching' rel='bookmark' title='Permanent Link: Penggunaan Function ereg() di PHP untuk Pattern Matching'>Penggunaan Function ereg() di PHP untuk Pattern Matching</a></li>
<li><a href='http://blog.rosihanari.net/penggunaan-cookie-untuk-mencegah-submit-ganda-pada-polling' rel='bookmark' title='Permanent Link: Penggunaan Cookie untuk Mencegah Submit Ganda pada Polling'>Penggunaan Cookie untuk Mencegah Submit Ganda pada Polling</a></li>
<li><a href='http://blog.rosihanari.net/membuat-autentifikasi-user-di-php' rel='bookmark' title='Permanent Link: Membuat Autentifikasi User di PHP'>Membuat Autentifikasi User di PHP</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.rosihanari.net">Blog ini</a> telah dilengkapi dengan tampilan mobile friendly bagi pengunjung setia yang sering mengakses via handphone. Secara otomatis blog ini akan mengarahkan (<em>redirecting</em>) tampilan ke mode mobile friendly bila sedang diakses via handphone. Bila Anda perhatikan, tampilan blog dalam mode mobile friendly ini lebih sederhana dibandingkan tampilan sebenarnya. Anda bisa lihat seperti apa tampilan blog ini via handphone. Dengan mode mobile friendly ini, file size yang diakses via handphone akan lebih kecil sehingga pulsa yang diperlukan untuk akses internet juga sedikit. Konsep yang sama juga diterapkan oleh <a href="http://detik.com">Detik.com</a>.</p>
<p>Contoh lain, pernahkah Anda mengunjungi situs <a href="http://www.waptrik.com">waptrik.com</a>? Situs tersebut menyediakan free software aplikasi handphone Anda. Apabila Anda mencoba mengunjungi situs tersebut via browser di komputer Anda, maka situs tersebut tidak bisa diakses. Mengapa? karena situs tersebut hanya bisa diakses oleh handphone saja. Hebatnya lagi.. begitu Anda akses situs tersebut dengan handphone, maka secara otomatis akan muncul list software-software yang kompatible terhadap handphone Anda. Sebagai contoh misalkan Anda menggunakan Nokia, maka akan muncul list software yang support dengan Nokia, dst.</p>
<p>Nah.. yang menjadi pertanyaan, bagaimana cara mendeteksi bahwa seorang pengunjung situs kita atau secara umum pengakses script yang kita taruh ke dalam server hosting itu menggunakan handphone atau tidak? atau kalau perlu kita bisa mendeteksi merek handphone yang sedang digunakan visitor. Konsep ini nantinya kita gunakan untuk membuat konten mobile. Pertanyaan tersebut dapat terjawab dengan membaca user agent dari visitor.</p>
<p><span id="more-1254"></span></p>
<p>Apa itu user agent? user agent adalah suatu aplikasi di sisi client (pengakses) yang secara otomatis mengirim informasi berupa string kepada server pada layanan web. String informasi ini bisa berisi OS yang digunakan, software vendor browsernya, versi software dll.</p>
<p>Salah satu bentuk string informasi user agent adalah sbb:</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.8</pre></div></div>

<p>Dari string di atas tampak informasi bahwa terdapat client yang sedang mengakses menggunakan OS Windows, dan menggunakan Firefox sebagai browsernya, serta versinya yaitu 3.5.8.</p>
<p>Nah&#8230; lantas bagaimana bentuk string user agent yang berasal dari handphone? ini dia contohnya untuk Nokia N90</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.1</pre></div></div>

<p>Anda bisa lihat bentuk-bentuk user agent untuk jenis handphone yang lain di <a href="http://en.wikipedia.org/wiki/List_of_user_agents_for_mobile_phones">Wikipedia</a>.</p>
<p>Dari keterangan di atas tampak bahwa untuk handphone, di dalam user agent nya terdapat informasi jenis handphone serta serinya. Dengan demikian kita tinggal olah user agent tersebut untuk membangun konten mobile seperti yang diharapkan.</p>
<p>OK.. sekarang bagaimana cara membaca user agent dengan PHP? Caranya sangat mudah, yaitu dengan menggunakan perintah <code>$_SERVER['HTTP_USER_AGENT']</code></p>
<p>Berikut ini contoh script PHP untuk mendeteksi merek handphone apa yang sedang digunakan user untuk mengakses script.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
&nbsp;
<span style="color: #000088;">$listMerk</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Nokia'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'iPhone'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'iPod'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'BlackBerry'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'HTC'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'LG'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'Nokia'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'Samsung'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'SonyEricsson'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000088;">$agent</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'HTTP_USER_AGENT'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #b1b100;">foreach</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$listMerk</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$merk</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
   <span style="color: #000088;">$count</span> <span style="color: #339933;">=</span> <span style="color: #990000;">substr_count</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$agent</span><span style="color: #339933;">,</span> <span style="color: #000088;">$merk</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$count</span> <span style="color: #339933;">&gt;</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000088;">$merkDigunakan</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$merk</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;Anda menggunakan HP berjenis &quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$merkDigunakan</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Konsep dari script di atas adalah, pertama kita list dulu merek handphone yang ada di pasaran. Di sini saya hanya mencontohkan beberapa jenis saja. Selanjutnya setelah itu kita baca user agent nya. Proses berikutnya adalah mengecek apakah user agent nya memuat string berisi merek handphone yang sudah kita list tadi? Di sini saya menggunakan function <code>subtr_count()</code> untuk menentukan ada tidaknya nama merek yang sudah kita list di dalam user agent nya. Function <code>substr_count()</code> berfungsi untuk menghitung jumlah subtring dalam suatu string. Untuk menentukan ada tidaknya suatu substring yang terdapat dalam string cukup dengan melihat jumlahnya. Jika jumlahnya lebih besar dari 0, maka berarti substring itu ada dalam string.</p>
<p>Untuk melihat tampilan dari script di atas, silakan upload ke server hosting lalu akses script tersebut via handphone Anda. Jangan Anda taruh di localhost lho ya ! <img src='http://blog.rosihanari.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>OK.. selamat mencoba dan silakan berkreasi sendiri. Mudah-mudahan artikel ini berguna bagi Anda yang ingin belajar mengembangkan konten web untuk mobile.</p>


<p>Related posts:<ol><li><a href='http://blog.rosihanari.net/penggunaan-function-ereg-di-php-untuk-pattern-matching' rel='bookmark' title='Permanent Link: Penggunaan Function ereg() di PHP untuk Pattern Matching'>Penggunaan Function ereg() di PHP untuk Pattern Matching</a></li>
<li><a href='http://blog.rosihanari.net/penggunaan-cookie-untuk-mencegah-submit-ganda-pada-polling' rel='bookmark' title='Permanent Link: Penggunaan Cookie untuk Mencegah Submit Ganda pada Polling'>Penggunaan Cookie untuk Mencegah Submit Ganda pada Polling</a></li>
<li><a href='http://blog.rosihanari.net/membuat-autentifikasi-user-di-php' rel='bookmark' title='Permanent Link: Membuat Autentifikasi User di PHP'>Membuat Autentifikasi User di PHP</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.rosihanari.net/penggunaan-user-agent-untuk-konten-mobile/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Membuat Kotak Fans Club Facebook di Blog Wordpress</title>
		<link>http://blog.rosihanari.net/membuat-kotak-fans-club-facebook-di-blog-wordpress</link>
		<comments>http://blog.rosihanari.net/membuat-kotak-fans-club-facebook-di-blog-wordpress#comments</comments>
		<pubDate>Sat, 27 Feb 2010 23:44:24 +0000</pubDate>
		<dc:creator>rosihanari</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[fans club blog]]></category>
		<category><![CDATA[fans club facebook]]></category>
		<category><![CDATA[kotak fans wordpress]]></category>
		<category><![CDATA[membuat fans box]]></category>
		<category><![CDATA[membuat kotak fans club]]></category>

		<guid isPermaLink="false">http://blog.rosihanari.net/?p=1243</guid>
		<description><![CDATA[Senang rasanya jika blog kita punya banyak fans club. Dengan fans club tersebut, kita bisa membuat sebuah komunitas positif untuk berbagi informasi, kritik dan saran untuk kemajuan blog kita, atau bahkan sebagai sarana untuk marketing. Marketing? lho kok bisa? Bila Anda sebuah punya produk baru, Anda bisa tawarkan kepada semua fans club. Biasanya marketing dengan [...]


Related posts:<ol><li><a href='http://blog.rosihanari.net/kaos-wordpress-keren-bagi-wordpress-maniac' rel='bookmark' title='Permanent Link: Kaos Wordpress Keren Bagi Wordpress Maniac'>Kaos Wordpress Keren Bagi Wordpress Maniac</a></li>
<li><a href='http://blog.rosihanari.net/this-blog-has-been-upgraded-to-wordpress-2-8' rel='bookmark' title='Permanent Link: This Blog Has Been Upgraded to Wordpress 2.8'>This Blog Has Been Upgraded to Wordpress 2.8</a></li>
<li><a href='http://blog.rosihanari.net/membuat-equation-di-wordpress' rel='bookmark' title='Permanent Link: Membuat Equation di Wordpress'>Membuat Equation di Wordpress</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Senang rasanya jika blog kita punya banyak fans club. Dengan fans club tersebut, kita bisa membuat sebuah komunitas positif untuk berbagi informasi, kritik dan saran untuk kemajuan blog kita, atau bahkan sebagai sarana untuk marketing. Marketing? lho kok bisa? Bila Anda sebuah punya produk baru, Anda bisa tawarkan kepada semua fans club. Biasanya marketing dengan cara seperti ini lebih fokus dan tertarget karena mereka yang bergabung di fans club adalah yang visi dan interestnya sama dengan si pemilik blog. Akan tetapi&#8230; ada syaratnya. Tidak semua produk bisa ditawarkan, melainkan hanya produk yang tidak menyimpang dari konten blog Anda. Misal blog Anda membahas tentang matematika, namun Anda menawarkan produk &#8216;ebook sampah penjual mimpi&#8217; kepada fans club, ya&#8230; dijamin gak ada yang bakal tertarik <img src='http://blog.rosihanari.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Nah&#8230; sekarang bagaimana cara membuat kotak fans club untuk mewadahi pengunjung blog kita supaya bisa bergabung? Kita tidak perlu repot-repot membuat script sendiri untuk membuat kotak fans club, namun cukup kita memanfaatkan Facebook saja. </p>
<p>Tentu kita telah mengetahui bahwa di Facebook kita bisa membuat fans club dengan cara yang sangat mudah. Sekarang.. bagaimana caranya supaya kita bisa letakkan kotak fans club di blog Wordpress kita? Ini dia caranya..</p>
<p><span id="more-1243"></span></p>
<p>Langkah pertama, yang Anda lakukan adalah membuat akun Facebook dahulu. Silakan register terlebih dahulu di Facebook (http://facebook.com). Hal ini mutlak diperlukan supaya pihak Facebook mengetahui siapa yang bertanggung jawab pada fans club tersebut.</p>
<p>Langkah ke dua, setelah proses registrasi di Facebook sukses, silakan masuk ke <strong>Home</strong> dari Facebook Anda. Bila Anda lihat pada sisi sebelah kiri, akan terdapat link &#8216;<strong>Ads and Pages</strong>&#8216;. </p>
<p><img src="http://i363.photobucket.com/albums/oo75/rosihanari/fb01.jpg" border="1" alt="Membuat Fans Box Facebook di Wordpress"></p>
<p>Klik pada link tersebut, dan Anda dipersilakan membuat Page (Create Page). Silakan buat Page untuk Fans Club Blog Anda. </p>
<p>Langkah ke tiga, selanjutnya bila Page sudah berhasil dibuat, klik link &#8216;<strong>Edit Page</strong>&#8216; di bawah gambar logo Page yang tadi Anda buat.</p>
<p><img src="http://i363.photobucket.com/albums/oo75/rosihanari/fb03.jpg" border="1" alt="Membuat Fans Box Facebook di Wordpress"></p>
<p>Langkah ke empat, carilah link &#8216;<strong>Promote with a Fan Box</strong>&#8216; di kolom bagian tengah halaman. Setelah Anda klik link tersebut Anda akan dihadapkan pada Fan Box Widget.</p>
<p><img src="http://i363.photobucket.com/albums/oo75/rosihanari/fb02.jpg" border="1" alt="Membuat Fans Box Facebook di Wordpress"></p>
<p>Langkah ke lima, pada bagian Fan Box Widget, Anda akan diberikan beberapa opsi terkait pengaturan Fan Box, seperti &#8216;Include Stream&#8217;, &#8216;Include Fans&#8217;, &#8216;Include Facebook Logo&#8217;. Silakan pilih opsi yang diinginkan, dan Anda akan melihat preview Fan Box nya.</p>
<p>Langkah ke enam, setelah Anda mantap dengan bentuk tampilan Fan Box, langkah berikutnya adalah menaruh scriptnya ke blog Wordpress kita. Caranya bagaimana? OK&#8230; silakan klik &#8216;Other&#8217; pada &#8216;Choose where to add the widget&#8217;, yang kemudian kita diberikan kode Javascript untuk dicopy paste ke Wordpress. Adapun bentuk kode Javascriptnya adalah sbb:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">&lt;script type=&quot;text/javascript&quot; src=&quot;http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php/en_US&quot;&gt;&lt;/script&gt;
<span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span>FB.<span style="color: #660066;">init</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;73a167797293ac43093ea3b39019f1eb&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;&lt;/</span>script<span style="color: #339933;">&gt;</span>
&lt;fb:fan profile_id=&quot;343421557560&quot; stream=&quot;0&quot; connections=&quot;10&quot; logobar=&quot;0&quot; width=&quot;300&quot;&gt;
&lt;/fb:fan&gt;</pre></div></div>

<p>Oya&#8230; Anda dapat mengubah parameter pada kode tersebut, misalkan pada parameter <code>connections="..."</code>. Parameter tersebut menentukan jumlah fans yang tampil dalam Fan Box. Anda dapat pula mengatur panjang Fan Box pada parameter <code>width="..."</code>.</p>
<p>Langkah ke tujuh, silakan taruh kode di atas pada widget Wordpress kita dan jreng&#8230; tampilah kotak Fans Club di blog Wordpress yang kita miliki, seperti halnya di bagian bawah artikel pada <a href="http://blog.rosihanari.net">blog saya ini</a>. Sebenarnya tidak hanya di Wordpress kita bisa letakkan kode tersebut, namun juga untuk jenis blog yang lain atau bahkan situs bikinan kita sendiri.</p>
<p>Mudah bukan membuatnya?? OK semoga blog Wordpress Anda mendapat banyak fans club. Selamat mencoba,</p>


<p>Related posts:<ol><li><a href='http://blog.rosihanari.net/kaos-wordpress-keren-bagi-wordpress-maniac' rel='bookmark' title='Permanent Link: Kaos Wordpress Keren Bagi Wordpress Maniac'>Kaos Wordpress Keren Bagi Wordpress Maniac</a></li>
<li><a href='http://blog.rosihanari.net/this-blog-has-been-upgraded-to-wordpress-2-8' rel='bookmark' title='Permanent Link: This Blog Has Been Upgraded to Wordpress 2.8'>This Blog Has Been Upgraded to Wordpress 2.8</a></li>
<li><a href='http://blog.rosihanari.net/membuat-equation-di-wordpress' rel='bookmark' title='Permanent Link: Membuat Equation di Wordpress'>Membuat Equation di Wordpress</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.rosihanari.net/membuat-kotak-fans-club-facebook-di-blog-wordpress/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Menghitung Jumlah Hari Minggu Antara Dua Tanggal</title>
		<link>http://blog.rosihanari.net/menghitung-jumlah-hari-minggu-antara-dua-tanggal</link>
		<comments>http://blog.rosihanari.net/menghitung-jumlah-hari-minggu-antara-dua-tanggal#comments</comments>
		<pubDate>Sat, 27 Feb 2010 10:46:32 +0000</pubDate>
		<dc:creator>rosihanari</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[date function]]></category>
		<category><![CDATA[function date php]]></category>
		<category><![CDATA[operasi tanggal php]]></category>
		<category><![CDATA[script php]]></category>

		<guid isPermaLink="false">http://blog.rosihanari.net/?p=1238</guid>
		<description><![CDATA[Ada salah satu pertanyaan dari salah satu pengunjung blog ini yang agak nyeleneh namun asyik bila direnungkan cara mencari solusinya. Pertanyaannya adalah: &#8220;Bagaimana cara menghitung jumlah hari minggu antara dua buah tanggal?&#8220;. Pertanyaan tersebut muncul karena yang bersangkutan ingin membuat sistem untuk mencari jumlah total denda yang dihitung harian kecuali hari minggu. Asyik bukan pertanyaannya? [...]


Related posts:<ol><li><a href='http://blog.rosihanari.net/mengetahui-nama-hari-pada-tanggal-tertentu-dengan-php' rel='bookmark' title='Permanent Link: Mengetahui Nama Hari pada Tanggal Tertentu dengan PHP'>Mengetahui Nama Hari pada Tanggal Tertentu dengan PHP</a></li>
<li><a href='http://blog.rosihanari.net/mencari-selisih-hari-dari-dua-buah-tanggal-dengan-php-tanpa-query-sql' rel='bookmark' title='Permanent Link: Mencari Selisih Hari dari Dua Buah Tanggal dengan PHP (Tanpa Query SQL)'>Mencari Selisih Hari dari Dua Buah Tanggal dengan PHP (Tanpa Query SQL)</a></li>
<li><a href='http://blog.rosihanari.net/mencari-jumlah-hari-dalam-bulan-tertentu' rel='bookmark' title='Permanent Link: Mencari Jumlah Hari dalam Bulan Tertentu'>Mencari Jumlah Hari dalam Bulan Tertentu</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Ada salah satu pertanyaan dari salah satu pengunjung <a href="http://blog.rosihanari.net">blog ini</a> yang agak nyeleneh namun asyik bila direnungkan cara mencari solusinya. Pertanyaannya adalah: &#8220;<em>Bagaimana cara menghitung jumlah hari minggu antara dua buah tanggal?</em>&#8220;. Pertanyaan tersebut muncul karena yang bersangkutan ingin membuat sistem untuk mencari jumlah total denda yang dihitung harian kecuali hari minggu. Asyik bukan pertanyaannya? <img src='http://blog.rosihanari.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Anda pusing memikirkan solusinya? jangan menyerah kawan karena di dalam programming ada 1001 jalan menuju solusi yang diharapkan. Ah.. sok tahu nih yang nulis !! he &#8230; 3x. Eh.. tapi bener kok, untuk mencari solusi programming itu sebenarnya mudah, Anda sendirilah yang menganggapnya sulit. Jika image Anda terhadap programming sudah dianggap sulit, maka seterusnya akan Anda anggap sulit. Konsep pemilihan algoritma untuk mencari solusi pada suatu kasus pada prinsipnya sederhana, dan jangan memikirkan yang rumit dan terlalu muluk-muluk dulu. </p>
<p>OK.. Stop berteori ! sekarang saatnya praktik dan membuktikan apakah solusi kasus di atas benar-benar mudah.</p>
<p><span id="more-1238"></span></p>
<p>Misalkan kita memiliki dua buah tanggal, katakanlah A dan B. Selanjutnya kita ingin mencari jumlah hari minggu di antara kedua tanggal tersebut. Apa ide Anda? Kalau ide saya, saya akan mengecek hari pada setiap tanggal di antara kedua tanggal. Setiap kali ditemukan hari suatu tanggal adalah hari Minggu, maka counter untuk menghitung jumlah hari minggu akan bertambah 1.</p>
<p><b>Contoh Kasus:</b></p>
<p>Misalkan kita akan menghitung jumlah hari minggu antara tanggal 01-01-2010 s/d 31-01-2010. Untuk menghitung jumlah hari minggu di antara kedua tanggal tersebut, mula-mula kita set jumlah hari Minggunya adalah 0 (karena kita belum menghitungnya). Selanjutnya kita mulai cek untuk tanggal 01-01-2010, apakah dia adalah hari Minggu? menurut kalender, tanggal tersebut adalah hari Jumat. Berarti jumlah hari Minggunya masih 0 karena belum dijumpai tanggal yang harinya Minggu. Berikutnya kita cek tanggal berikutnya yaitu 02-01-2010, apakah hari Minggu? ternyata bukan lagi. Barulah tanggal 03-01-2010 adalah hari Minggu. Berarti counter untuk hari Minggunya bertambah menjadi 1. Demikian seterusnya pengecekan ini dilakukan sampai dengan tanggal 31-01-2010. Setiap kali ditemukan tanggal dimana harinya adalah Minggu, maka counternya bertambah satu. Pada akhirnya kita akan dapatkan total jumlah hari Minggunya. </p>
<p>OK&#8230; demikian idenya. Selanjutnya, bagaimana implementasinya di script PHP? Implementasinya cukup mudah yaitu dengan menggunakan looping (perulangan). Permasalahan berikutnya adalah, bagaimana kita mengenerate tanggal-tanggal antara kedua tanggal, lalu mengecek hari setiap tanggal-tanggal yang dihasilkan? Inipun juga mudah, untuk mengenerate tanggal-tanggal tersebut kita gunakan function <code>mktime()</code>. Function ini nanti kita sisipkan di dalam loopingnya. Kapan looping ini berhenti? ya.. jika tanggal yang dihasilkan dari <code>mktime()</code> ini mencapai akhir tanggal yang menjadi batas kedua tanggal tersebut.</p>
<p>Trus.. bagaimana cara penggunaan function <code>mktime()</code>? OK.. ini saya kasih contohnya. Misalkan kita ingin mengenerate tanggal setelah 31-01-2010 (tanggal hari berikutnya) dengan menggunakan <code>mktime()</code>. Ini dia perintahnya:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #b1b100;">echo</span> <span style="color: #990000;">date</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;d-m-Y&quot;</span><span style="color: #339933;">,</span> <span style="color: #990000;">mktime</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">31</span><span style="color: #339933;">+</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2010</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Bila perintah di atas dijalankan maka akan dihasilkan tanggal 01-02-2010. Perhatikan format tanggalnya yang dihasilkan oleh <code>date("d-m-Y", mktime(...))</code></p>
<p>Sedangkan perintah di bawah ini untuk menghasilkan tanggal setelah 5 hari dari tanggal 31-01-2010.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #b1b100;">echo</span> <span style="color: #990000;">date</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;d-m-Y&quot;</span><span style="color: #339933;">,</span> <span style="color: #990000;">mktime</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">31</span><span style="color: #339933;">+</span><span style="color: #cc66cc;">5</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2010</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>yang akan menghasilkan tanggal 05-02-2010.</p>
<p>Kemudian, bagaimana cara mengecek nama hari pada suatu tanggal di PHP? untuk mengecek nama hari dari suatu tanggal di PHP kita gunakan function <code>date("w", mktime(...))</code>. Function ini akan menghasilkan bilangan 0 s/d 6 yang merepresentasikan nama hari yaitu 0 : minggu, 1 : senin, 2 : selasa, &#8230; dst.</p>
<p>Ide penyelesaian sudah dapat, trus&#8230; cara mengenerate tanggal di antara dua buah tanggal serta mengetahui nama hari suatu tanggal juga sudah, so&#8230; kita bisa buat script PHP nya sekarang. </p>
<p>Ini dia scriptnya. Script ini akan menghitung jumlah hari Minggu antara tanggal 20-02-2010 s/d 20-04-2010, sekaligus menampilkan semua tanggalnya yang harinya Minggu.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
&nbsp;
<span style="color: #000088;">$date1</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;20-02-2010&quot;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$date2</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;20-04-2010&quot;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// memecah bagian-bagian dari tanggal $date1</span>
<span style="color: #000088;">$pecahTgl1</span> <span style="color: #339933;">=</span> <span style="color: #990000;">explode</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;-&quot;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$date1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// membaca bagian-bagian dari $date1</span>
<span style="color: #000088;">$tgl1</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$pecahTgl1</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$bln1</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$pecahTgl1</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$thn1</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$pecahTgl1</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;&lt;p&gt;Tanggal yang merupakan hari minggu adalah:&lt;/p&gt;&quot;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// counter looping</span>
<span style="color: #000088;">$i</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// counter untuk jumlah hari minggu</span>
<span style="color: #000088;">$sum</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #b1b100;">do</span>
<span style="color: #009900;">&#123;</span>
   <span style="color: #666666; font-style: italic;">// mengenerate tanggal berikutnya</span>
   <span style="color: #000088;">$tanggal</span> <span style="color: #339933;">=</span> <span style="color: #990000;">date</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;d-m-Y&quot;</span><span style="color: #339933;">,</span> <span style="color: #990000;">mktime</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #000088;">$bln1</span><span style="color: #339933;">,</span> <span style="color: #000088;">$tgl1</span><span style="color: #339933;">+</span><span style="color: #000088;">$i</span><span style="color: #339933;">,</span> <span style="color: #000088;">$thn1</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #666666; font-style: italic;">// cek jika harinya minggu, maka counter $sum bertambah satu, lalu tampilkan tanggalnya</span>
   <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">date</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;w&quot;</span><span style="color: #339933;">,</span> <span style="color: #990000;">mktime</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #000088;">$bln1</span><span style="color: #339933;">,</span> <span style="color: #000088;">$tgl1</span><span style="color: #339933;">+</span><span style="color: #000088;">$i</span><span style="color: #339933;">,</span> <span style="color: #000088;">$thn1</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>
   <span style="color: #009900;">&#123;</span>
     <span style="color: #000088;">$sum</span><span style="color: #339933;">++;</span>
     <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$tanggal</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;&lt;br&gt;&quot;</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span> 	 
&nbsp;
   <span style="color: #666666; font-style: italic;">// increment untuk counter looping</span>
   <span style="color: #000088;">$i</span><span style="color: #339933;">++;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #b1b100;">while</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$tanggal</span> <span style="color: #339933;">!=</span> <span style="color: #000088;">$date2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>   
&nbsp;
<span style="color: #666666; font-style: italic;">// looping di atas akan terus dilakukan selama tanggal yang digenerate tidak sama dengan $date2.</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// tampilkan jumlah hari Minggu</span>
<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;&lt;p&gt;Jumlah hari minggu antara &quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$date1</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot; s/d &quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$date2</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot; adalah: &quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$sum</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;&lt;/p&gt;&quot;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Hasil output dari script di atas adalah sebagai berikut:</p>
<p><img src="http://i363.photobucket.com/albums/oo75/rosihanari/minggu.jpg" border="1" alt="menghitung jumlah hari minggu - script PHP"></p>
<p>OK mudah bukan membuatnya? Selamat mencoba dan semoga bermanfaat.</p>


<p>Related posts:<ol><li><a href='http://blog.rosihanari.net/mengetahui-nama-hari-pada-tanggal-tertentu-dengan-php' rel='bookmark' title='Permanent Link: Mengetahui Nama Hari pada Tanggal Tertentu dengan PHP'>Mengetahui Nama Hari pada Tanggal Tertentu dengan PHP</a></li>
<li><a href='http://blog.rosihanari.net/mencari-selisih-hari-dari-dua-buah-tanggal-dengan-php-tanpa-query-sql' rel='bookmark' title='Permanent Link: Mencari Selisih Hari dari Dua Buah Tanggal dengan PHP (Tanpa Query SQL)'>Mencari Selisih Hari dari Dua Buah Tanggal dengan PHP (Tanpa Query SQL)</a></li>
<li><a href='http://blog.rosihanari.net/mencari-jumlah-hari-dalam-bulan-tertentu' rel='bookmark' title='Permanent Link: Mencari Jumlah Hari dalam Bulan Tertentu'>Mencari Jumlah Hari dalam Bulan Tertentu</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.rosihanari.net/menghitung-jumlah-hari-minggu-antara-dua-tanggal/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Cara Mengenkripsi Script PHP Supaya Tidak Terbaca</title>
		<link>http://blog.rosihanari.net/cara-mengenkripsi-script-php-supaya-tidak-terbaca</link>
		<comments>http://blog.rosihanari.net/cara-mengenkripsi-script-php-supaya-tidak-terbaca#comments</comments>
		<pubDate>Fri, 19 Feb 2010 09:06:30 +0000</pubDate>
		<dc:creator>rosihanari</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[encode php]]></category>
		<category><![CDATA[enkripsi script php]]></category>
		<category><![CDATA[free php encoding]]></category>
		<category><![CDATA[keamanan script php]]></category>

		<guid isPermaLink="false">http://blog.rosihanari.net/?p=1232</guid>
		<description><![CDATA[Anda ingin agar source code script PHP yang telah dibuat dengan susah payah tidak ingin dilihat orang? Kini sudah ada solusinya dengan cara yang mudah dan murah meriah? lho kok murah? emangnya ada yang mahal? oh.. ada donk. Rata-rata encoder script PHP itu bayar seperti Zend Guard, Ion Cube, atau Zend Encoder. Pertama sih.. kita [...]


Related posts:<ol><li><a href='http://blog.rosihanari.net/cara-supaya-service-sms-daemon-gammu-berjalan-otomatis-di-windows' rel='bookmark' title='Permanent Link: Cara Supaya Service SMS Daemon Gammu Berjalan Otomatis di Windows'>Cara Supaya Service SMS Daemon Gammu Berjalan Otomatis di Windows</a></li>
<li><a href='http://blog.rosihanari.net/kenapa-pengubahan-konfigurasi-file-php-ini-tidak-ada-efeknya' rel='bookmark' title='Permanent Link: Kenapa Pengubahan Konfigurasi File php.ini Tidak Ada Efeknya?'>Kenapa Pengubahan Konfigurasi File php.ini Tidak Ada Efeknya?</a></li>
<li><a href='http://blog.rosihanari.net/mengenkripsi-parameter-get-method-untuk-keamanan' rel='bookmark' title='Permanent Link: Mengenkripsi Parameter GET Method Untuk Keamanan'>Mengenkripsi Parameter GET Method Untuk Keamanan</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Anda ingin agar source code script PHP yang telah dibuat dengan susah payah tidak ingin dilihat orang? Kini sudah ada solusinya dengan cara yang mudah dan murah meriah? lho kok murah? emangnya ada yang mahal? oh.. ada donk. Rata-rata encoder script PHP itu bayar seperti Zend Guard, Ion Cube, atau Zend Encoder. Pertama sih.. kita mendownload encodernya gratis, namun gratisnya tidak selamanya alias punya umur. Untuk bisa tetap memakai barulah kita bayar. </p>
<p>Namun sekarang kita tak perlu keluar uang untuk membeli encoder tersebut namun cukup dengan membuka situs <a href="http://www.freephpencoder.com">http://www.freephpencoder.com</a>. Situs ini menawarkan fasilitas untuk mengenkripsi script PHP yang kita buat 100% FREE dan dengan cara yang mudah.</p>
<p>Mau tahu caranya mengenkripsi script PHP melalui situs di atas? OK ini dia caranya.</p>
<p><span id="more-1232"></span></p>
<p><strong>Langkah 1:</strong> silakan buat script PHP dahulu, misalkan saya buat seperti ini saja ya yang mudah</p>
<p><strong>contoh.php</strong></p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;Test&quot;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>kemudian script di atas kita simpan dengan nama file contoh.php</p>
<p><strong>Langkah 2:</strong> kita buka situs <a href="http://www.freephpencoder.com">http://www.freephpencoder.com</a> kemudian pilih file contoh.php di atas pada kotak &#8216;<strong>Attached File (PHP)</strong>&#8216;. Bagaimana bila file script PHP yang kita buat lebih dari 1 buah? jangan khawatir karena Anda dapat memilih beberapa file sekaligus dalam situs tersebut. Setelah dipilih file script PHP yang akan dienkrip, selanjutnya isikan kunci enkripsi pada kotak &#8216;<strong>Encryption Key</strong>&#8216;. Anda dapat mengisikan dengan sebarang kode, bisa angka atau huruf. Kunci ini nanti akan digunakan untuk proses decoding ketika script hasil enkripsi atau encoded script akan dijalankan. Kemudian pada pilihan &#8216;<strong>Encoding Type</strong>&#8216; pilih &#8216;<strong>Reguler Encoding</strong>&#8216;. Terakhir klik tombol <strong>ENCODE</strong>.</p>
<p><strong>Langkah 3: </strong>setelah kita klik <strong>ENCODE</strong> pada langkah kedua, kita diminta mendownload script hasil encoding. Adapun nama file yang kita download adalah sama dengan nama-nama file aslinya, plus.. satu lagi adalah file <strong>decoder.php</strong>. Kemudian kita letakkan file-file tersebut ke direktori web server kita.</p>
<p>Oya.. mau tahu isi dari file contoh.php di atas setelah dienkripsi sekaligus isi dari decoder.php nya? ini dia..</p>
<p>contoh.php</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
&nbsp;
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;_ENCRYPTED_CODE_&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;eG0lMEUlRDklQkUlOEUlMDN5RXZHaDUlMUQlRDclRUM=&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;_ENCRYPTOR_KEY_&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;cfcd208495d565ef66e7dff9f98764da&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;_DECODER_PATH_&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;decoder.php&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//You can change this path to point to the decoder file in another location.</span>
&nbsp;
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span>_DECODER_PATH_<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">include_once</span><span style="color: #009900;">&#40;</span>_DECODER_PATH_<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span>
<span style="color: #b1b100;">else</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">echo</span><span style="color: #0000ff;">&quot;Decoder file does not exist&quot;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span> <span style="color: #666666; font-style: italic;">// Relative or absolute path to the decoder file </span>
&nbsp;
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Maaf.. untuk isi file decoder.php nya sangat panjang isinya, dan isinya gak karu-karuan karena berisi kode-kode yang gak jelas di bagian akhirnya. Oleh karena itu yang saya tampilkan adalah screen shot nya saja ya.</p>
<p><img src="http://i363.photobucket.com/albums/oo75/rosihanari/decoder.jpg" border="1" alt="PHP decoder"></p>
<p><strong>Langkah 4:</strong> jalankan script contoh.php hasil dari enkripsi melalui web browser. Kalau ternyata muncul peringatan atau muncul hasil yang tidak diharapkan, bisa jadi server Anda belum diinstal <strong>Zend Optimizer</strong>. Software ini mutlak harus ada untuk menjalankan script hasil enkripsi tadi. Software ini 100% FREE dan Anda bisa mendownloadnya di <a href="http://www.zend.com/en/products/guard/downloads">http://www.zend.com/en/products/guard/downloads</a>. Oya.. Zend Optimizer ini nanti harus diinstal ke direktori Apache Anda, jadi jangan diinstal di sembarang direktori pada komputer Anda. Memang agak rumit proses instalasi Zend Optimizer ini, but.. selama Anda patuh akan petunjuknya selama proses instalasi, maka segalanya akan mudah.</p>
<p>Nah.. lantas file mana yang didistribusikan? file asli atau file hasil enkripsinya? ya.. tentu saja file hasil enkripsinya, file yang asli tetap di tangan Anda. Dengan demikian file yang Anda distribusikan benar-benar tidak bisa dibaca source aslinya sehingga tetap aman meskipun di tangan orang lain.</p>
<p>OK&#8230; mudah-mudahan artikel ini berguna buat Anda ya&#8230;</p>


<p>Related posts:<ol><li><a href='http://blog.rosihanari.net/cara-supaya-service-sms-daemon-gammu-berjalan-otomatis-di-windows' rel='bookmark' title='Permanent Link: Cara Supaya Service SMS Daemon Gammu Berjalan Otomatis di Windows'>Cara Supaya Service SMS Daemon Gammu Berjalan Otomatis di Windows</a></li>
<li><a href='http://blog.rosihanari.net/kenapa-pengubahan-konfigurasi-file-php-ini-tidak-ada-efeknya' rel='bookmark' title='Permanent Link: Kenapa Pengubahan Konfigurasi File php.ini Tidak Ada Efeknya?'>Kenapa Pengubahan Konfigurasi File php.ini Tidak Ada Efeknya?</a></li>
<li><a href='http://blog.rosihanari.net/mengenkripsi-parameter-get-method-untuk-keamanan' rel='bookmark' title='Permanent Link: Mengenkripsi Parameter GET Method Untuk Keamanan'>Mengenkripsi Parameter GET Method Untuk Keamanan</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.rosihanari.net/cara-mengenkripsi-script-php-supaya-tidak-terbaca/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Membuat SMS Gateway Ucapan Ulang Tahun Otomatis dengan PHP + MySQL</title>
		<link>http://blog.rosihanari.net/membuat-sms-gateway-ucapan-ulang-tahun-otomatis-dengan-php-mysql</link>
		<comments>http://blog.rosihanari.net/membuat-sms-gateway-ucapan-ulang-tahun-otomatis-dengan-php-mysql#comments</comments>
		<pubDate>Fri, 19 Feb 2010 00:02:55 +0000</pubDate>
		<dc:creator>rosihanari</dc:creator>
				<category><![CDATA[SMS Gateway]]></category>
		<category><![CDATA[script sms]]></category>
		<category><![CDATA[sms gammu]]></category>
		<category><![CDATA[sms gateway mysql]]></category>
		<category><![CDATA[sms gateway php]]></category>
		<category><![CDATA[sms ulang tahun]]></category>

		<guid isPermaLink="false">http://blog.rosihanari.net/?p=1225</guid>
		<description><![CDATA[Seperti yang pernah saya janjikan dahulu, saya akan mencoba memposting artikel tentang aplikasi SMS gateway untuk membuat SMS ucapan ulang tahun secara otomatis dalam blog ini. 
Jika Anda punya banyak teman dan Anda memiliki data tanggal lahir semua teman Anda, maka mudah-mudahan script yang dibahas dalam artikel ini akan bermanfaat. Oleh teman Anda, Anda akan [...]


Related posts:<ol><li><a href='http://blog.rosihanari.net/script-pengirim-sms-massal-menggunakan-sms-gateway-dengan-php-dan-mysql' rel='bookmark' title='Permanent Link: Script SMS Gateway V2.0 dengan PHP dan MySQL'>Script SMS Gateway V2.0 dengan PHP dan MySQL</a></li>
<li><a href='http://blog.rosihanari.net/membuat-auto-deletion-hapus-otomatis-data-dengan-script-php' rel='bookmark' title='Permanent Link: Membuat Auto Deletion (Hapus Otomatis) Data Dengan Script PHP'>Membuat Auto Deletion (Hapus Otomatis) Data Dengan Script PHP</a></li>
<li><a href='http://blog.rosihanari.net/script-php-untuk-arsip-artikel-berdasarkan-bulan-dan-tahun' rel='bookmark' title='Permanent Link: Script PHP untuk Arsip Artikel Berdasarkan Bulan dan Tahun'>Script PHP untuk Arsip Artikel Berdasarkan Bulan dan Tahun</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Seperti yang pernah saya janjikan dahulu, saya akan mencoba memposting artikel tentang aplikasi SMS gateway untuk membuat SMS ucapan ulang tahun secara otomatis dalam <a href="http://blog.rosihanari.net">blog ini</a>. </p>
<p>Jika Anda punya banyak teman dan Anda memiliki data tanggal lahir semua teman Anda, maka mudah-mudahan script yang dibahas dalam artikel ini akan bermanfaat. Oleh teman Anda, Anda akan dianggap sebagai teman yang sangat perhatian, karena setiap kali sang teman berulang tahun maka SMS ucapan ultah selalu terkirim ke dia tepat waktu tanpa meleset 1 hari pun, 1 jam bahkan 1 menit pun (kalo waktu di komputer Anda sama dengan waktu di rumah teman Anda &#8230; he 3x). Tapi jangan bilang ke temen Anda, bhw yang mengirim SMS ucapan ultah adalah program komputer ya <img src='http://blog.rosihanari.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><span id="more-1225"></span></p>
<p>OK, untuk membuat SMS ucapan ulang tahun otomatis ini kita memerlukan Gammu sebagai SMS daemonnya, HP tentu saja dan sebuah komputer yang senantiasa ON terus. Mengapa haris ON terus komputernya? ya.. kalo pas ada temen Anda yang ulang tahun namun kebetulan komputer Anda lagi mati, ya&#8230; SMS nya gak bisa terkirim. <em>It makes sense, doesn&#8217;t it</em>? <img src='http://blog.rosihanari.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  Oya, satu lagi Anda perlu XAMPP atau AppServ untuk menjalankan programnya, karena kita akan membuatnya menggunakan PHP + MySQL. Untuk mengetahui cara instalasi Gammu dan bagaimana cara mengintegrasikannya dengan MySQL silakan baca <a href="http://blog.rosihanari.net/setting-gammu-untuk-aplikasi-sms-gateway">artikel cara setting Gammu</a>.</p>
<p>Trus&#8230; untuk tabel datanya, apa saja yang dibutuhkan?</p>
<p>Untuk keperluan ini, kita buat 2 buah tabel. Tabel pertama untuk menyimpan data teman Anda. Data apa saja yang disimpan? cukup nama, nomor HP dan tanggal lahirnya saja. Tabel ini kita namai &#8216;friends&#8217;. Kemudian tabel kedua untuk menyimpan data SMS ucapan ultah yang telah terkirim ke teman Anda. Tabel ini kita namai &#8216;kirim&#8217;. Untuk tabel &#8216;kirim&#8217; cukup memiliki field nomor HP dan tanggal kirim SMS saja. Tabel ini berfungsi sebagai pencegah pengiriman SMS ucapan secara berulang, karena script yang kita buat ini nanti menggunakan Auto Refresh atau dengan kata lain script ini berjalan secara otomatis pada selang waktu tertentu. Tanpa adanya tabel kedua ini, maka proses pengiriman SMS ucapan ultah bisa dilakukan beberapa kali. Oleh karena itu untuk tabel kedua ini, field nomor HP dan tanggal kirim SMS kita buat sebagai primary key. </p>
<p>Nah.. untuk kedua tabel di atas, berikut ini struktur tabel dan contoh datanya</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">CREATE</span> <span style="color: #993333; font-weight: bold;">TABLE</span> <span style="color: #ff0000;">`friends`</span> <span style="color: #66cc66;">&#40;</span>
  <span style="color: #ff0000;">`noHP`</span> varchar<span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">30</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span>
  <span style="color: #ff0000;">`nama`</span> varchar<span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">100</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span>
  <span style="color: #ff0000;">`tglLahir`</span> date<span style="color: #66cc66;">,</span>
  <span style="color: #993333; font-weight: bold;">PRIMARY</span> <span style="color: #993333; font-weight: bold;">KEY</span>  <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">`noHP`</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">CREATE</span> <span style="color: #993333; font-weight: bold;">TABLE</span> <span style="color: #ff0000;">`kirim`</span> <span style="color: #66cc66;">&#40;</span>
  <span style="color: #ff0000;">`noHP`</span> varchar<span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">30</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span>
  <span style="color: #ff0000;">`tglKirim`</span> date<span style="color: #66cc66;">,</span>
  <span style="color: #993333; font-weight: bold;">PRIMARY</span> <span style="color: #993333; font-weight: bold;">KEY</span>  <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">`noHP`</span><span style="color: #66cc66;">,</span><span style="color: #ff0000;">`tglKirim`</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> <span style="color: #ff0000;">`friends`</span> <span style="color: #993333; font-weight: bold;">VALUES</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'08881111111'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'A'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'1979-02-21'</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> <span style="color: #ff0000;">`friends`</span> <span style="color: #993333; font-weight: bold;">VALUES</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'08120101010'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'B'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'1980-09-07'</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> <span style="color: #ff0000;">`friends`</span> <span style="color: #993333; font-weight: bold;">VALUES</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'08562810000'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'C'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'1986-03-10'</span><span style="color: #66cc66;">&#41;</span>;</pre></div></div>

<p>Kedua tabel di atas nantinya dibuat di dalam database yang sama dengan tabel-tabel bawaan dari Gammu, seperti tabel INBOX, OUTBOX, SENTITEMS dsb&#8230;</p>
<p>Kemudian bagaimana ide dari script SMS ucapan ulang tahun ini. Idenya adalah pertama kali kita cari dulu data teman yang ada di tabel &#8216;friends&#8217; yang tanggal lahir dan bulan lahirnya sama dengan saat ini (<em>current date</em>). Untuk tahun lahirnya tidak usah diperhatikan saja. Kemudian bila ada data teman yang tanggal dan bulan lahirnya sesuai dengan <em>current date</em>, kita baca nomor HP dan namanya. Proses selanjutnya adalah jangan langsung mengirim SMS ucapannya, namun kita simpan data nomor HP dan current date nya ke tabel &#8216;kirim&#8217;. Jika proses insert atau simpan data ke tabel &#8216;kirim&#8217; ini berhasil barulah kita kirim SMS ucapannya ke tabel &#8216;OUTBOX&#8217; yang sudah disediakan oleh Gammu. Namun jika gagal, berarti SMS ucapan sebelumnya sudah pernah terkirim. Proses insert data ke tabel &#8216;kirim&#8217; ini gagal jika terdapat data nomor HP dan tanggal kirim yang sama, mengingat kedua field tersebut adalah primary key. Dengan demikian pasti ada jaminan bahwa SMS ucapan yang terkirim ke teman Anda tidak dilakukan berulang kali pada hari yang sama. Lantas bagaimana bila ulang tahunnya pada tahun depan? ya tidak ada masalah, kan <em>current date</em> nya sudah berbeda? sehingga proses insert data ke tabel &#8216;kirim&#8217; pasti berhasil pada tahun depan. </p>
<p>Berdasarkan ide di atas, berikut ini implementasi script PHP nya:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">&lt;html&gt;
&lt;head&gt;
   &lt;title&gt;SMS Ulang Tahun&lt;/title&gt;
   &lt;!-- refresh script setiap 10 detik --&gt;
   &lt;meta http-equiv=&quot;refresh&quot; content=&quot;10; url=<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'PHP_SELF'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&quot;&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;h1&gt;SMS Ulang Tahun Running...&lt;/h1&gt;
&nbsp;
<span style="color: #000000; font-weight: bold;">&lt;?php</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// koneksi ke database mysql</span>
<span style="color: #990000;">mysql_connect</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;ldbhost&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;dbuser&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;dbpass&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">mysql_select_db</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;dbname&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// baca tanggal sekarang</span>
<span style="color: #000088;">$tglNow</span> <span style="color: #339933;">=</span> <span style="color: #990000;">date</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;d&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// baca bulan sekarang</span>
<span style="color: #000088;">$blnNow</span> <span style="color: #339933;">=</span> <span style="color: #990000;">date</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;m&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// baca tahun-bulan-tanggal sekarang</span>
<span style="color: #000088;">$now</span> <span style="color: #339933;">=</span> <span style="color: #990000;">date</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Y-m-d&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// cari data teman yang bulan lahir dan tanggal lahir sesuai pada current date</span>
<span style="color: #000088;">$query</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;SELECT * FROM friends WHERE DAY(tglLahir) = '<span style="color: #006699; font-weight: bold;">$tglNow</span>' AND MONTH(tglLahir) = '<span style="color: #006699; font-weight: bold;">$blnNow</span>'&quot;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$hasil</span> <span style="color: #339933;">=</span> <span style="color: #990000;">mysql_query</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">while</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$data</span> <span style="color: #339933;">=</span> <span style="color: #990000;">mysql_fetch_array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$hasil</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
   <span style="color: #666666; font-style: italic;">// baca nomor HP dan nama teman</span>
   <span style="color: #000088;">$noHP</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$data</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'noHP'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$nama</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$data</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'nama'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #666666; font-style: italic;">// insert data ke tabel kirim</span>
   <span style="color: #000088;">$query2</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;INSERT INTO kirim (noHP, tglKirim) VALUES ('<span style="color: #006699; font-weight: bold;">$noHP</span>', '<span style="color: #006699; font-weight: bold;">$now</span>')&quot;</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$hasil2</span> <span style="color: #339933;">=</span> <span style="color: #990000;">mysql_query</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #666666; font-style: italic;">// jika proses insert ke tabel kirim sukses maka kirim sms ucapan</span>
   <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$hasil2</span><span style="color: #009900;">&#41;</span>
   <span style="color: #009900;">&#123;</span>
      <span style="color: #666666; font-style: italic;">// isi pesan SMS ucapan ultah, disertai nama temannya</span>
      <span style="color: #000088;">$pesanSMS</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;Wahai sahabatku &quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$nama</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;, Happy Birthday !! Semoga dengan bertambahnya usiamu, semakin bertambah pula amalan ibadahmu.&quot;</span><span style="color: #339933;">;</span>
&nbsp;
      <span style="color: #666666; font-style: italic;">// proses kirim sms via insert data ke tabel outbox</span>
      <span style="color: #000088;">$query2</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;INSERT INTO outbox (DestinationNumber, TextDecoded) VALUES ('<span style="color: #006699; font-weight: bold;">$noHP</span>', '<span style="color: #006699; font-weight: bold;">$pesanSMS</span>')&quot;</span><span style="color: #339933;">;</span>
      <span style="color: #990000;">mysql_query</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
&lt;/body&gt;
&lt;/html&gt;</pre></div></div>

<p>Script di atas akan melakukan autorefresh setiap 10 detik. Perhatikan perintah di bawah ini</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">&lt;meta http-equiv=&quot;refresh&quot; content=&quot;10; url=&lt;?php $_SERVER['PHP_SELF']; ?&gt;&quot;&gt;</pre></div></div>

<p>Bagaimana mudah bukan membuatnya? Bila teman Anda banyak, ya.. siap-siap modal yang banyak pula untuk biaya pengiriman SMS ucapan ultahnya <img src='http://blog.rosihanari.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  tapi gak ada masalah sih, bukankah persahabatan butuh pengorbanan? <img src='http://blog.rosihanari.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  Selamat mencoba ya&#8230;</p>


<p>Related posts:<ol><li><a href='http://blog.rosihanari.net/script-pengirim-sms-massal-menggunakan-sms-gateway-dengan-php-dan-mysql' rel='bookmark' title='Permanent Link: Script SMS Gateway V2.0 dengan PHP dan MySQL'>Script SMS Gateway V2.0 dengan PHP dan MySQL</a></li>
<li><a href='http://blog.rosihanari.net/membuat-auto-deletion-hapus-otomatis-data-dengan-script-php' rel='bookmark' title='Permanent Link: Membuat Auto Deletion (Hapus Otomatis) Data Dengan Script PHP'>Membuat Auto Deletion (Hapus Otomatis) Data Dengan Script PHP</a></li>
<li><a href='http://blog.rosihanari.net/script-php-untuk-arsip-artikel-berdasarkan-bulan-dan-tahun' rel='bookmark' title='Permanent Link: Script PHP untuk Arsip Artikel Berdasarkan Bulan dan Tahun'>Script PHP untuk Arsip Artikel Berdasarkan Bulan dan Tahun</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.rosihanari.net/membuat-sms-gateway-ucapan-ulang-tahun-otomatis-dengan-php-mysql/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Cara Mudah Membuat Grafik Statistik dengan PHP dan CSS</title>
		<link>http://blog.rosihanari.net/cara-mudah-membuat-grafik-statistik-dengan-php-dan-css</link>
		<comments>http://blog.rosihanari.net/cara-mudah-membuat-grafik-statistik-dengan-php-dan-css#comments</comments>
		<pubDate>Mon, 15 Feb 2010 11:07:09 +0000</pubDate>
		<dc:creator>rosihanari</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[grafik css]]></category>
		<category><![CDATA[grafik php]]></category>
		<category><![CDATA[grafik statistik php]]></category>
		<category><![CDATA[script grafik php]]></category>
		<category><![CDATA[script php]]></category>

		<guid isPermaLink="false">http://blog.rosihanari.net/?p=1220</guid>
		<description><![CDATA[Seperti yang saya janjikan pada status di Twitter maupun di Facebook bahwa saya berusaha akan menulis artikel tentang cara membuat grafik statistik dengan PHP dan CSS. Dan kini.. janji sudah terwujud.
Untuk membuat grafik chart, sebenarnya sudah banyak sekali package/library yang tersedia baik free maupun bayar. Salah satunya yang free adalah JpGraph. Cara penggunaan JpGraph ini [...]


Related posts:<ol><li><a href='http://blog.rosihanari.net/membuat-grafik-chart-di-php' rel='bookmark' title='Permanent Link: Membuat Grafik Chart di PHP'>Membuat Grafik Chart di PHP</a></li>
<li><a href='http://blog.rosihanari.net/membuat-efek-animasi-grafik-fungsi-dengan-maple' rel='bookmark' title='Permanent Link: Membuat Efek Animasi Grafik Fungsi dengan Maple'>Membuat Efek Animasi Grafik Fungsi dengan Maple</a></li>
<li><a href='http://blog.rosihanari.net/membuat-grafik-fungsi-2-dimensi-dengan-maple' rel='bookmark' title='Permanent Link: Membuat Grafik Fungsi 2 Dimensi dengan Maple'>Membuat Grafik Fungsi 2 Dimensi dengan Maple</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Seperti yang saya janjikan pada status di <a href="http://twitter.com/rosihanari">Twitter</a> maupun di <a href="http://www.facebook.com/pages/blogrosihanarinet/163210030756">Facebook</a> bahwa saya berusaha akan menulis artikel tentang cara membuat grafik statistik dengan PHP dan CSS. Dan kini.. janji sudah terwujud.</p>
<p>Untuk membuat grafik chart, sebenarnya sudah banyak sekali package/library yang tersedia baik free maupun bayar. Salah satunya yang free adalah <a href="http://www.aditus.nu/jpgraph/">JpGraph</a>. Cara penggunaan JpGraph ini pernah saya bahas <a href="http://blog.rosihanari.net/membuat-grafik-chart-di-php">sebelumnya</a>, atau Anda bisa download tutorialnya <a href="http://rosihanari.net/web-tutorial/php-graphics">di sini</a>. Namun, untuk menjalankan library-library tersebut harus didukung oleh library yang lain juga misalnya GD library. Tanpa library tersebut, maka mustahil library grafik yang Anda peroleh dapat dijalankan. Di samping itu kita masih agak sedikit repot dengan cara penggunaannya, karena setiap library grafik berbeda penggunaannya.</p>
<p>Nah.. kini Anda tak perlu repot lagi untuk membuat grafik chart karena saya akan memberikan tutorial cara membuat grafik statistik hanya dengan perintah PHP sederhana dan ditunjang oleh CSS (Cascade Style Sheet). Memang sih.. untuk tampilan tidak semewah kalo kita menggunakan JpGraph atau yang lain, tapi paling tidak.. representasi grafiknya bisa dibaca dengan mudah dan bisa membuat keren website Anda <img src='http://blog.rosihanari.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><span id="more-1220"></span></p>
<p>OK.. untuk studi kasus kali ini, saya akan menerapkan hal ini untuk representasi data mahasiswa berdasarkan jenis kelaminnya. Andaikan kita memiliki tabel database dan datanya sebagai berikut:</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">CREATE</span> <span style="color: #993333; font-weight: bold;">TABLE</span> <span style="color: #ff0000;">`mhs`</span> <span style="color: #66cc66;">&#40;</span>
  <span style="color: #ff0000;">`nim`</span> varchar<span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span>
  <span style="color: #ff0000;">`nama`</span> varchar<span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span>
  <span style="color: #ff0000;">`jenisKelamin`</span> varchar<span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">10</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span>
  <span style="color: #993333; font-weight: bold;">PRIMARY</span> <span style="color: #993333; font-weight: bold;">KEY</span>  <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">`nim`</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> <span style="color: #ff0000;">`mhs`</span> <span style="color: #993333; font-weight: bold;">VALUES</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'A001'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'A'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'LAKI-LAKI'</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> <span style="color: #ff0000;">`mhs`</span> <span style="color: #993333; font-weight: bold;">VALUES</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'A002'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'B'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'LAKI-LAKI'</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> <span style="color: #ff0000;">`mhs`</span> <span style="color: #993333; font-weight: bold;">VALUES</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'A003'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'C'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'LAKI-LAKI'</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> <span style="color: #ff0000;">`mhs`</span> <span style="color: #993333; font-weight: bold;">VALUES</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'A004'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'D'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'PEREMPUAN'</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> <span style="color: #ff0000;">`mhs`</span> <span style="color: #993333; font-weight: bold;">VALUES</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'A005'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'E'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'LAKI-LAKI'</span><span style="color: #66cc66;">&#41;</span>;</pre></div></div>

<p>Untuk outputnya, kita nanti akan berusaha membuat script yang menampilkan grafik seperti di bawah ini</p>
<p><img src="http://i363.photobucket.com/albums/oo75/rosihanari/stat.jpg" border="1" alt="Grafik dengan PHP dan CSS"></p>
<p>Perhatikan gambar di atas, bahwa ketika kita dekatkan mouse ke grafik batangnya maka akan muncul keterangan data statistiknya. Efek tersebut kita buat tanpa menggunakan script apapun, kecuali hanya CSS doang. Simpel tapi menarik bukan?</p>
<p>Trus.. gimana ide dasar membuat grafiknya? terutama membuat grafik batangnya? Dalam hal ini grafik batang kita buat menggunakan CSS sedangkan panjang pendeknya grafik batang tersebut tergantung jumlah data yang kita hitung menggunakan script PHP.</p>
<p>Untuk membuat sebuah batang dengan CSS, kita cukup membuat tag seperti ini:</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">&lt;div style=&quot;height: 10px; width: 10%; background-color: red;&quot; title=&quot;...&quot;&gt;&lt;/div&gt;</pre></div></div>

<p>Atribut &#8216;height&#8217; digunakan untuk mengatur lebar dari batang (dalam hal ini menggunakan satuan pixel). Selanjutnya &#8216;width&#8217; untuk menentukan panjang batang. Anda bisa menggunakan satuan pixel maupun prosentase. Bila Anda menggunakan prosentase maka prosentase yang dimaksud adalah relatif terhadap panjang jendela browser. Misalkan diberikan &#8216;width: 10%&#8217; maka panjang batang adalah 10% dari panjang jendela browser. Sedangkan atribut &#8216;background-color&#8217; untuk mengatur warna batang, dan &#8216;title&#8217; untuk memberikan title dari batang tersebut. Efek pemberian &#8216;title&#8217; tampak seperti pada gambar output di atas yaitu akan muncul keterangan (tool tips) ketika mouse mengenai batang tersebut.</p>
<p>Nah&#8230; untuk selanjutnya kita hanya bermain-main pada atribut &#8216;width&#8217; dan &#8216;title&#8217; untuk membuat tampilan output seperti di atas. Kedua atribut ini nanti kita buat dinamis tergantung jumlah datanya.</p>
<p>Trus.. untuk mengatur panjang pendeknya batang gimana caranya? caranya adalah dengan menggunakan skala. Wah.. ada matematikanya ya? jelas donk&#8230; wah mentang-mentang yang nulis artikel ini orang matematika ya? he.. 3x nggak juga, karena kebetulan topik ini ada sangkut pautnya dengan matematika <img src='http://blog.rosihanari.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Nah.. bagaimana penggunaan skalanya? OK kita misalkan kita tentukan panjang grafik maksimum adalah 30% dari panjang jendela browser. Karena 30% ini panjang maksimum, maka kejadian ini akan terjadi ketika ada item data yang jumlahnya 100%. Sebagai contoh misalkan ada 10 mahasiswa, dan semuanya pria (prosentase pria 100%). Dengan demikian grafik batang untuk pria ini panjangnya adalah 30%. Nah.. dari asumsi ini, kita tinggal atur skalanya berarti untuk item data sejumlah n% maka panjang batangnya adalah (n*30/100)%. OK, paham ya idenya?</p>
<p>Dengan demikian, berdasarkan ide di atas berarti sebelum mulai membuat grafiknya, kita harus dapatkan dulu data prosentase setiap item data, dalam hal ini jumlah laki-lakinya berapa prosen begitu pula perempuannya. Setelah jumlah prosentase masing-masing diketahui, barulah kita gunakan untuk mengatur panjang grafik batang menggunakan skala di atas.</p>
<p>So.. script untuk membuat grafik statistik mahasiswa berdasarkan jenis kelamin kita buat sbb:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// koneksi ke mysql</span>
<span style="color: #990000;">mysql_connect</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;dbhost&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;dbuser&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;dbpass&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">mysql_select_db</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;dbname&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// mencari jumlah laki-laki dari database</span>
<span style="color: #000088;">$query</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;SELECT count(*) AS jumCowok FROM mhs WHERE jenisKelamin = 'LAKI-LAKI'&quot;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$hasil</span> <span style="color: #339933;">=</span> <span style="color: #990000;">mysql_query</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$data</span>  <span style="color: #339933;">=</span> <span style="color: #990000;">mysql_fetch_array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$hasil</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$jumCowok</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$data</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'jumCowok'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// mencari jumlah perempuan dari database</span>
<span style="color: #000088;">$query</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;SELECT count(*) AS jumCewek FROM mhs WHERE jenisKelamin = 'PEREMPUAN'&quot;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$hasil</span> <span style="color: #339933;">=</span> <span style="color: #990000;">mysql_query</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$data</span>  <span style="color: #339933;">=</span> <span style="color: #990000;">mysql_fetch_array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$hasil</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$jumCewek</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$data</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'jumCewek'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// menghitung total mahasiswa</span>
<span style="color: #000088;">$total</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$jumCowok</span> <span style="color: #339933;">+</span> <span style="color: #000088;">$jumCewek</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// menghitung prosentase laki-laki dan perempuan</span>
<span style="color: #000088;">$prosenCowok</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$jumCowok</span><span style="color: #339933;">/</span><span style="color: #000088;">$total</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">100</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$prosenCewek</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$jumCewek</span><span style="color: #339933;">/</span><span style="color: #000088;">$total</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">100</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// menentukan panjang grafik batang berdasarkan prosentase</span>
<span style="color: #000088;">$panjangGrafikCowok</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$prosenCowok</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">30</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">100</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$panjangGrafikCewek</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$prosenCewek</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">30</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">100</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
&lt;h2&gt;Statistik Mahasiswa Berdasarkan Jenis Kelamin&lt;/h2&gt;
&nbsp;
&lt;p&gt;&lt;b&gt;Laki-laki&lt;/b&gt; (Jumlah: <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$jumCowok</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> | <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$prosenCowok</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>%) &lt;div style=&quot;height: 10px; width: <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$panjangGrafikCowok</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>%; background-color: red;&quot; title=&quot;Laki-laki (Jumlah: <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$jumCowok</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> | <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$prosenCowok</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>%)&quot;&gt;&lt;/div&gt;&lt;/p&gt;
&nbsp;
&lt;p&gt;&lt;b&gt;Perempuan&lt;/b&gt; (Jumlah: <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$jumCewek</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> | <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$prosenCewek</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>%) &lt;div style=&quot;height: 10px; width: <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$panjangGrafikCewek</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>%; background-color: red;&quot; title=&quot;Perempuan (Jumlah: <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$jumCewek</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> | <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$prosenCewek</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>%)&quot;&gt;&lt;/div&gt;&lt;/p&gt;</pre></div></div>

<p>Nah.. mudah bukan membuatnya?</p>
<p>Oya.. satu lagi yang perlu saya tambahkan. Lantas.. bagaimana bila kejadiannya keseluruhan mahasiswanya laki-laki atau perempuan? pastilah nantinya ada prosentase yang 0% dan akibatnya grafik batangnya tidak muncul karena width nya &#8216;0%&#8217;. Sebenarnya tidak apa-apa sih, namun.. kok kayaknya kurang seru. Meskipun prosentasenya 0%, tapi paling tidak kita munculkan sedikit grafiknya meskipun hanya dengan panjang 1%. Untuk membuat ini, kita harus tambahkan statement IF pada script di atas yaitu pada bagian penentuan panjang grafiknya, sehingga pada bagian tersebut menjadi:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$prosenCowok</span> <span style="color: #339933;">==</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000088;">$panjangGrafikCowok</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">else</span> <span style="color: #000088;">$panjangGrafikCowok</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$prosenCowok</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">30</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">100</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$prosenCewek</span> <span style="color: #339933;">==</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span> <span style="color: #000088;">$panjangGrafikCewek</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">else</span> <span style="color: #000088;">$panjangGrafikCewek</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$prosenCewek</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">30</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">100</span><span style="color: #339933;">;</span></pre></div></div>

<p>OK?? begitu tutorial yang saya berikan ini, mudah-mudahan ada manfaatnya. Artikel ini terinsipirasi oleh plugin polling di Wordpress yang saya pasang di <a href="http://blog.rosihanari.net">blog ini</a> yang menggunakan ide di atas.</p>


<p>Related posts:<ol><li><a href='http://blog.rosihanari.net/membuat-grafik-chart-di-php' rel='bookmark' title='Permanent Link: Membuat Grafik Chart di PHP'>Membuat Grafik Chart di PHP</a></li>
<li><a href='http://blog.rosihanari.net/membuat-efek-animasi-grafik-fungsi-dengan-maple' rel='bookmark' title='Permanent Link: Membuat Efek Animasi Grafik Fungsi dengan Maple'>Membuat Efek Animasi Grafik Fungsi dengan Maple</a></li>
<li><a href='http://blog.rosihanari.net/membuat-grafik-fungsi-2-dimensi-dengan-maple' rel='bookmark' title='Permanent Link: Membuat Grafik Fungsi 2 Dimensi dengan Maple'>Membuat Grafik Fungsi 2 Dimensi dengan Maple</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.rosihanari.net/cara-mudah-membuat-grafik-statistik-dengan-php-dan-css/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
