<?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>TAUJAGO.WEB.ID [ Share IT Knowledge ] &#187; PHP</title>
	<atom:link href="http://taujago.web.id/index.php/category/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://taujago.web.id</link>
	<description>php,linux,wordpress,music,mp3,blog,membuat blog, taujago,firmansyah,information technology,notebook,memilih notebook,virus,worm,server,dhcp,dns,postfix,dns</description>
	<lastBuildDate>Sat, 10 Apr 2010 06:59:14 +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>SMS Gateway menggunakan Gammu di Ubuntu</title>
		<link>http://taujago.web.id/index.php/2010/03/05/sms-gateway-menggunakan-gammu-di-ubuntu/</link>
		<comments>http://taujago.web.id/index.php/2010/03/05/sms-gateway-menggunakan-gammu-di-ubuntu/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 17:31:41 +0000</pubDate>
		<dc:creator>Firman</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[smsgateway]]></category>

		<guid isPermaLink="false">http://taujago.web.id/?p=105</guid>
		<description><![CDATA[Gammu adalah software opensource yang cukup handal untuk membangun SMS gateway. pada penerapannya, bisa dikembangkan menjadi berbagai macam aplikasi terapan seperti untuk pooling SMS, server pengisian pulsa dan sebagainya. Konsep dan cara kerja gammu sangat sederhana. Gammu melakukan koneksi ke HP. membaca SMS yang ada di handphone mengambilnya, dan menyimpannya ke dalam media penyimpanan di [...]]]></description>
			<content:encoded><![CDATA[<p>Gammu adalah software opensource yang cukup handal untuk membangun SMS gateway. pada penerapannya, bisa dikembangkan menjadi berbagai macam aplikasi terapan seperti untuk pooling SMS, server pengisian pulsa dan sebagainya. Konsep dan cara kerja gammu sangat sederhana. Gammu melakukan koneksi ke HP. membaca SMS yang ada di handphone mengambilnya, dan menyimpannya ke dalam media penyimpanan di komputer. baik itu berupa file text atau ke dalam database seperti MySQL ataupun PostgreSQL.</p>
<p>Pada percobaan ini, saya menggunakan HP siemens M55 dengan kabel konektor BlueTech USB.</p>
<p>skema..<br />
<code><br />
[hahdphone] &lt;-&gt; [gammu] &lt;-&gt; [Database Mysql] &lt;-&gt; [Intefaces]<br />
</code></p>
<p><strong>Installasi Gammu </strong></p>
<p>gammu dapat di download di website  resminya di sini<br />
<code>http://dl.cihar.com/gammu/releases/gammu-1.27.92.tar.gz</code></p>
<p>Download gammu<br />
<code>#wget http://dl.cihar.com/gammu/releases/gammu-1.27.92.tar.gz</code></p>
<p><span id="more-105"></span>Extract hasil download</p>
<p><code><br />
#tar -zxfv gammu-1.27.92.tar.gz</code></p>
<p>masuk ke direktori hasil extract<br />
<code>cd gammu-1.27.92<br />
</code></p>
<p>Sebelum melakukan proses kompilasi, pastikan bahwa cmake, gcc dan library mysql-devel sudah terinstall. cmake untuk proses kompilasi sedangkan mysql-devel digunakan supaya gammu dapat menyimpan SMS ke dalam database mysql.</p>
<p><code><br />
#apt-get install cmake gcc<br />
#apt-get install libmysql++-dev<br />
</code></p>
<p>Lakukan installasi dengan 3 langkah mudah<br />
<code><br />
#./configure --enable-shared<br />
#make<br />
#make test<br />
#make install<br />
</code></p>
<p>Setelah terinstall, kita coba mengkonfigurasi gammu supaya dapat berkomunikasi dengan handphone</p>
<p><code><br />
# gammu-config<br />
Current Gammu configuration<br />
?<br />
?                                                    ?<br />
?  P Port                 (/dev/ttyUSB0)     ?<br />
?  C Connection           (at19200)         ?<br />
?  M Model                ()                     ?<br />
?  D Synchronize time     (yes)            ?<br />
?  F Log file             ()                       ?<br />
?  O Log format           (nothing)          ?<br />
?  L Use locking          ()                    ?<br />
?  G Gammu localisation   ()               ?<br />
?  H Help                                         ?<br />
?  S Save                                        ?<br />
?                                                   ?<br />
?                                                   ?<br />
?                              |<br />
</code></p>
<p>Pilih menu <strong>Port</strong> dan ganti dengan  /dev/ttyUSB0 karena kabel yang saya gunakan menggunakan port usb ke komputer<br />
Untuk<strong> Connection </strong>pilih at19200. ini merupakan tipe koneksi default. jika anda menggunakan jenis HP yang berbeda, silahkan sesuaikan.</p>
<p>Pilih menu <strong>Save</strong> kemudian OK</p>
<p>pada dasarnya, yang kita lakukan tadi adalah menciptakan sebuah file yang disimpan dalam home direktori user dengan nama .gammurc<br />
silahkan cek isi file tersebut.</p>
<p>Test koneksi ke HP dengan gammu</p>
<p><code><br />
# gammu --identify<br />
Device               : /dev/ttyUSB0<br />
Manufacturer         : Siemens<br />
Model                : unknown (M55)<br />
Firmware             : 10<br />
IMEI                 : 352027003098230<br />
SIM IMSI             : 510102833201906<br />
</code></p>
<p>Konfigurasi SMS daemon menggunakan database mysql</p>
<p>1. Buat database dengan nama sms<br />
<code><br />
#mysqladmin create sms -uroot -p<br />
#mysql sms -uroot -p &lt;  /usr/local/share/doc/gammu/examples/sql/mysql.sql<br />
</code></p>
<p>2. Membuat konfigurasi smsd. Gammu sudah membuatkan contoh konfigurasi file untuk smsd. kita bisa mengambilnya dari file  /usr/local/share/doc/gammu/examples/config/smsrc. yang perlu kita lakukan adalah dengan mengcopy file tersebut dan simpan dalam direktori /etc<br />
<code><br />
#cp /usr/local/share/doc/gammu/examples/config/smsdrc /etc<br />
</code></p>
<p>3. Edit file /etc/smsdrc dan rubah pada bagian berikut<br />
<code><br />
[gammu]<br />
port = /dev/ttyUSB0<br />
connection = at19200<br />
[smsd]<br />
service = mysql<br />
user = root<br />
password = rahasia<br />
pc = localhost<br />
database = sms<br />
</code></p>
<p>4. Menjalankan Gammu sebagai SMS daemon<br />
<code><br />
# gammu-smsd -c /etc/smsdrc<br />
</code></p>
<p>Setelah menjalankan perintah di atas, gammu akan mulai bekerja. membaca sms di HP kemudian menyimpannya ke dalam database MySQL dan menghapus SMS yang ada di HP. coba cek inbox HP. jika SMSnya berkurang, berarti gammu sudah berjalan dengan benar. jika tidak, silahkan periksa file smsdlog</p>
<p>Membaca dan mengirim  SMS<br />
untuk membaca SMS, kita dapat melakukan query pada tabel inbox di dalam database sms<br />
<code><br />
mysql&gt; select * from inbox;<br />
</code></p>
<p>Sedangkan jika ingin mengirimkan SMS, dapat dilakukan dengan menginputkan tabel outbox<br />
<code><br />
mysql&gt; insert into outbox(DestinationNumber,TextDecoded) values('081328080020','Test sms gammu');<br />
</code></p>
<p>Jadi, untuk mengelola SMS, baik untuk mengirimkan atau membaca SMS yang masuk tinggal mengutak-atik tabel-tabel yang ada di database sms. karena sudah disimpan dalam database, kita dapat membuat interface dengan menggunakan PHP,VisualBasic, Delphi, Java atau apapun sepanjang dapat mengakses database MySQL.<br />
Terima kasih, dan selamat mencoba</p>
]]></content:encoded>
			<wfw:commentRss>http://taujago.web.id/index.php/2010/03/05/sms-gateway-menggunakan-gammu-di-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHPJavaBridge- PHP PDF Generator</title>
		<link>http://taujago.web.id/index.php/2009/01/06/javaphpbridge-php-pdf-generator/</link>
		<comments>http://taujago.web.id/index.php/2009/01/06/javaphpbridge-php-pdf-generator/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 07:04:51 +0000</pubDate>
		<dc:creator>Firman</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://taujago.web.id/?p=43</guid>
		<description><![CDATA[Salah satu bagian terpenting dari sebuah sistem adalah laporan. Laporan bisa dibuat dalam berbagai macam format dokumen. PDF (Portable Document Format) adalah salah satu format dokumen yang banyak digunakan.
Bagaimana dengan Aplikasi berbasis web ? Untuk aplikasi berbasis web, PDF juga sering digunakan untuk membuat laporan. Ada banyak sekali class PHP untuk menggenerate dokumen PDF. Ada [...]]]></description>
			<content:encoded><![CDATA[<p>Salah satu bagian terpenting dari sebuah sistem adalah laporan. Laporan bisa dibuat dalam berbagai macam format dokumen. PDF (Portable Document Format) adalah salah satu format dokumen yang banyak digunakan.</p>
<p>Bagaimana dengan Aplikasi berbasis web ? Untuk aplikasi berbasis web, PDF juga sering digunakan untuk membuat laporan. Ada banyak sekali class PHP untuk menggenerate dokumen PDF. Ada TCPDF, FPD, dll. Saya sendiri pernah mencoba menggunakan class tersebut. Memang bagus cuman saya mengalami kesulitan ketika membuat laporan yang cukup rumit. Bukannya kelas2 tadi gk bisa, cuman ribet ajah..</p>
<p>Akhirnya saya menemukan cara yang lebih &#8216;manusiawi&#8217; untuk membuat dokumen PDF. yaitu menggunakan <a href="http://www.php-java-bridge.sourceforge.net" target="_blank">PHP-Java-bridge<span id="more-43"></span></a></p>
<p>Cara kerjanya kira &#8211; kira begini. Kita membuat sebuah dokumen dengan format JRXML kemudian java akan memproses dokument tersebut menjadi dokumen PDF. Trus hubungannya dengan PHP apa ?  PHP kita gunakan untuk menjalankan kelas java yang bertugas menggenerate JRXML menjadi PDF tadi.</p>
<p><strong>Installasi </strong></p>
<p>Untuk installasi, sangat sederhana sekali. karena menjalankan class java, kita harus menginstlal Java2RuntimeEnvironment (bisa di download <a href="http://www.java.com/en/download/manual.jsp">di sini</a> ). Kemudian <a href="http://sourceforge.net/project/showfiles.php?group_id=64348&amp;package_id=64215&amp;release_id=603069">download iReport</a>. iReport adalah tool untuk menggenerate dokumen JRXML. Extract file tadi, kemudian copy semua isi direktori iRreport3.1xx\lib ke dalam direktori library java. Klo anda pengguna windows, ada di direktori C:\Program Files\Java\jre1.6.xxx\lib\ext</p>
<p><strong>Membuat Dokumen JRXML dengan iReport </strong></p>
<p>Jalankan program iReport.exe di direktori iReport yang telah di extract tadi. Buat dulu koneksi ke database. Database yang saya gunakan adalah MySQL. dari menu <strong>Data =&gt; Connections/DataSources </strong>Kemudian buat koneksi baru dengan mengklik tombol <strong>NEW . </strong>Pada bagian <strong>Select The Datasource Type</strong>, pilih <strong>Database JDBC Connection</strong></p>
<p><a href="http://taujago.web.id/wp-content/uploads/2009/01/jdbc_connection.jpg"><img class="aligncenter size-medium wp-image-44" title="jdbc_connection" src="http://taujago.web.id/wp-content/uploads/2009/01/jdbc_connection-255x300.jpg" alt="" width="255" height="300" /></a></p>
<p>Isikan <strong>Name </strong>dengan nama ds sesuka kita. <strong>JDBC Url </strong>tidak perlu diisikan. Isikan saja pada bagian <strong>Server Address</strong> = localhost dan <strong>Database</strong> = namadatabase. Kemudian klik tombok<strong> Wizard</strong>.  <strong>JDBC URL </strong>akan otomatis diisikan berdasarkan <strong>Server Address </strong>dan <strong>Database</strong>.  Kemudian Klik <strong>Save</strong></p>
<p>Untuk mebuat dokumen baru, klikdari menu <strong>File -&gt; Report Wizard. </strong>Isikan <strong>SQL Query </strong>dengan query data yang ingin ditampilkan. Atau tombol Klik <strong>Design Query </strong>untuk membuat query customize. Kemudian Klik <strong>Next </strong>, pilih jenis Tampilan dokumen. Columntar atau Tabular. Supaya datanya ditampilkan dalam bentuk tabel, pilih <strong>Tabularl.</strong> Kemudian ikuti terus wizard, sampe selesia.</p>
<p>Simpan dokumen di direktori Document_root apache.Untuk melihat hasil sementar dokumen, <strong>Build -&gt; Execute (With active connection).</strong></p>
<p><strong>Generate Dokumen PDF dari PHP</strong></p>
<p>Download <a href="http://sourceforge.net/projects/php-java-bridge" target="_blank"><strong>PHP-Java-Bridge</strong></a> kemudian extract file tersebut. Ambil 2 buah File yaitu JavaBridge.jar di direktori php-java-bridge_5.2.2.4_j2ee\JAVA.STANDALONE  dan java.inc yang ada di direktori  php-java-bridge_5.2.2.4_j2ee\JAVA.STANDALONE\java kemudian copykan ke Document_root PHP.Untuk keamanan, sebaiknya java.inc di rename menjadi java.inc.php.</p>
<p>Supaya java bisa melakukan koneksi ke database MySQL <a href="http://taliwangksb.googlepages.com/firman.jar">downloa package koneksi java mysql di sini</a>. nama packagenya saya gunakan nama saya. kalo anda tidak suka, silahkan compile ulang sendiri, sourcenya ada di dalam file tadi.</p>
<p>Kemudian buat file php dengan source sbb :</p>
<pre name="code" class="php">
&lt;?php
require_once "Java.inc.php";
$host="localhost";
$dbname="sislitbang";
$user="root";
$password="";
$Conn = new Java("firman.JdbcConnection"); // calls the altic file
$Conn-&gt;setDriver("com.mysql.jdbc.Driver");
$Conn-&gt;setConnectString("jdbc:mysql://$host/$dbname");
$Conn-&gt;setUser($user);
$Conn-&gt;setPassword($password);

$compileManager = new JavaClass("net.sf.jasperreports.engine.JasperCompileManager");
$report = $compileManager-&gt;compileReport(realpath("pegawai.jrxml"));
$fillManager = new JavaClass("net.sf.jasperreports.engine.JasperFillManager");
//$params-&gt;put("test","Firmansyah");
//$params-&gt;put("id_unit","1");

$jasperPrint = $fillManager-&gt;fillReport($report, $params, $Conn-&gt;getConnection());
$exportManager = new JavaClass("net.sf.jasperreports.engine.JasperExportManager");
$outfile="pegawai.pdf";
//$outputPath = realpath(".")."/"."pegawai.pdf";
$outputPath = $outfile;
$exportManager-&gt;exportReportToPdfFile($jasperPrint, $outputPath);
header("location:$outfile");
?&gt;
</pre>
<p>Jalankan (doubleklik) JavaBridge.jar dari dokumen root. Kemudian klik ok. Untuk memastikan JavaBridge sudah bekerja, buka browser di URL http://localhost:8080</p>
<p>Coba di preview file php tadi  di webbrowser.. selamat mencoba</p>
]]></content:encoded>
			<wfw:commentRss>http://taujago.web.id/index.php/2009/01/06/javaphpbridge-php-pdf-generator/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Panduan installasi oracle, apache dan php di linux OS</title>
		<link>http://taujago.web.id/index.php/2008/06/17/panduan-installasi-oracle-apache-dan-php-di-linux-os/</link>
		<comments>http://taujago.web.id/index.php/2008/06/17/panduan-installasi-oracle-apache-dan-php-di-linux-os/#comments</comments>
		<pubDate>Tue, 17 Jun 2008 09:43:16 +0000</pubDate>
		<dc:creator>Firman</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[install oracle linux]]></category>
		<category><![CDATA[oracle php linux]]></category>
		<category><![CDATA[oracle10g]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://taujago.web.id/?p=41</guid>
		<description><![CDATA[Baru &#8211; baru ini saya ditugaskan untuk membuat materi tentang Oracle, PHP di Linux OS. Secara terpisah, ketiga materi tersebut sudah sering saya ajarkan ke peserta saya. tapi dicombine menjadi satu materi, ini adalah sebuah tantangan yang cukup menarik. Materi ini membahas tentang langkah &#8211; langkah installasi Oracle 10g di linux. Kemudian mengaksesnya melalui PHP. [...]]]></description>
			<content:encoded><![CDATA[<p>Baru &#8211; baru ini saya ditugaskan untuk membuat materi tentang Oracle, PHP di Linux OS. Secara terpisah, ketiga materi tersebut sudah sering saya ajarkan ke peserta saya. tapi dicombine menjadi satu materi, ini adalah sebuah tantangan yang cukup menarik. Materi ini membahas tentang langkah &#8211; langkah installasi Oracle 10g di linux. Kemudian mengaksesnya melalui PHP. Beberapa hal sepele tetapi kadang menjadi masalah besar. di sini sudah saya tuliskan dengan cukup lengap.</p>
<p>Karena menemukan banyak kesulitan, akhirnya saya bermaksud mendokumentasikan dan membagi pada yang lain siapa tahu ada yang mengalami kesulitan yang serupa yang saya alami. SIlahkan <a href="http://upload.ugm.ac.id/download.php?file=4779INSTALLASI%20ORACLE%2010G.doc" target="_blank">klik disini</a> untuk mendownloadnyah.. semoga bermanfaat..</p>
]]></content:encoded>
			<wfw:commentRss>http://taujago.web.id/index.php/2008/06/17/panduan-installasi-oracle-apache-dan-php-di-linux-os/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Format Angka Nol dg. PHP. Serupa Tapi Tak sama</title>
		<link>http://taujago.web.id/index.php/2008/03/27/format-angka-nol-dg-php-serupa-tapi-tak-sama/</link>
		<comments>http://taujago.web.id/index.php/2008/03/27/format-angka-nol-dg-php-serupa-tapi-tak-sama/#comments</comments>
		<pubDate>Thu, 27 Mar 2008 02:31:20 +0000</pubDate>
		<dc:creator>Firman</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://taujago.web.id/index.php/2008/03/27/format-angka-nol-dg-php-serupa-tapi-tak-sama/</guid>
		<description><![CDATA[Kali ini saya akan membahas tentang logika sederhana menggunakan bahasa pemrograman PHP. program ini berfungsi untuk menambahkan angka nol di depan angka. misal angkanya adalah 1 maka jadinya nanti 000001 . kalo angkanya 120, jadinya 000120 dan seterusnya. saya yakin, bagi yang sudah sering menulis program dengan PHP sudah pasti tahu bagaimana memecahkan masalah ini. [...]]]></description>
			<content:encoded><![CDATA[<p>Kali ini saya akan membahas tentang logika sederhana menggunakan bahasa pemrograman PHP. program ini berfungsi untuk menambahkan angka nol di depan angka. misal angkanya adalah 1 maka jadinya nanti 000001 . kalo angkanya 120, jadinya 000120 dan seterusnya. saya yakin, bagi yang sudah sering menulis program dengan PHP sudah pasti tahu bagaimana memecahkan masalah ini. Tapi di sini, saya hanya ingin mengungkap sisi lain, atau semacam teknik lain yang mungkin lebih efisien dan lebih mempersingkat kode.. <img src='http://taujago.web.id/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> <span id="more-26"></span></p>
<p>Berikut ini adalah kode yang mungkin umum digunakan :</p>
<p>&lt;?</p>
<p>$angka = 123;<br />
// hasilnya nanti 000001<br />
//kalo 12 jadinya 000012<br />
$len = strlen($angka);<br />
if($len==1) $nol=&#8221;00000&#8243;;<br />
else if($len==2) $nol=&#8221;0000&#8243;;<br />
else if($len==3) $nol=&#8221;000&#8243;;<br />
else if($len==4) $nol=&#8221;00&#8243;;<br />
else if($len==5) $nol=&#8221;0&#8243;;</p>
<p>$angka = $nol.$angka;</p>
<p>echo $angka;</p>
<p>?&gt;</p>
<p>Kode di atas, pasti sudah benar tapi bagaimana dengan kode seperti ini :</p>
<p>&lt;?</p>
<p>$angka = 12322234;<br />
$nol = array(1=&gt;&#8221;00000&#8243;,&#8221;0000&#8243;,&#8221;000&#8243;,&#8221;00&#8243;,&#8221;0&#8243;,&#8221;");<br />
$angka= $nol[strlen($angka)].$angka;<br />
echo &#8220;$angka&#8221;;</p>
<p>?&gt;</p>
<p>yang mana yang akan anda gunakan ? terserah ada sebagai programmer. yagn jelas, kedua kode di atas menghasilkan hasil yang sama &#8230;.</p>
]]></content:encoded>
			<wfw:commentRss>http://taujago.web.id/index.php/2008/03/27/format-angka-nol-dg-php-serupa-tapi-tak-sama/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Melindungi form dari serangan worm dengan Captca</title>
		<link>http://taujago.web.id/index.php/2008/02/03/melindungi-form-dari-serangan-worm-dengan-captca/</link>
		<comments>http://taujago.web.id/index.php/2008/02/03/melindungi-form-dari-serangan-worm-dengan-captca/#comments</comments>
		<pubDate>Sun, 03 Feb 2008 08:44:01 +0000</pubDate>
		<dc:creator>Firman</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://taujago.web.id/index.php/2008/02/03/melindungi-form-dari-serangan-worm-dengan-captca/</guid>
		<description><![CDATA[Seringkali sebuah form diisi secara otomatis oleh worm sehigga banyak sekali data &#8211; data yang tidak kita kehendaki. untuk memecahkan masalah tersebut, kita harus memastikan bahwa yang mengisi form adalah benar &#8211; benar user/manusia bukan worm atau program sejenisnya. Untuk melakukan hal tersebut, dapat dilakukan dengan metode captca. Captca adalah menggenerate sebuah image yang dituliskan [...]]]></description>
			<content:encoded><![CDATA[<p class="entry">Seringkali sebuah form diisi secara otomatis oleh worm sehigga banyak sekali data &#8211; data yang tidak kita kehendaki. untuk memecahkan masalah tersebut, kita harus memastikan bahwa yang mengisi form adalah benar &#8211; benar user/manusia bukan worm atau program sejenisnya. Untuk melakukan hal tersebut, dapat dilakukan dengan metode captca. Captca adalah menggenerate sebuah image yang dituliskan kode acak yang dimana, kode tersebut harus dimasukkan oleh user. berikut ini adalah kode nya :<span id="more-15"></span></p>
<p>getimage.php</p>
<pre>session_start();

function generate_captcha()

{

$char = strtoupper(substr(str_shuffle('abcdefghjkmnpqrstuvwxyz'), 0, 4));

$captcha_code = rand(1, 9) . rand(1, 9) . $char;

header('Content-type: image/png');

header('Cache-control: no-cache');

$image = @imagecreate(155, 45) or die("Cannot Initialize new GD image stream");

$background_color = imagecolorallocate($image, 255, 255, 255);

$color = imagecolorallocate($image, rand(150, 50), rand(145, 120), rand(200, 155));

$font = 'verdana.ttf';

$rotate = rand(-8, 8);

imagettftext($image, 18, $rotate, 20, 35, $color, $font, $captcha_code);

for ($i=1; $i &lt;=10; $i++){

imageline($image, 0, $i*rand(8, 10), 155, $i*rand(10, 8), $color);

imageline($image, $i*rand(16, 18), 0, $i*rand(14, 16), 45, $color);

}

imagerectangle($image,0,0,154,44,$color);

imagejpeg($image);

ImageDestroy($image);

$_SESSION["captcha_code"] = $captcha_code;

}

generate_captcha();</pre>
<p>kemudian untuk formnya, dapat dibuat seperti dibawah ini.</p>
<p>&lt;?php<br />
if (isset($_POST[’submitform’])){<br />
session_start();<br />
if (strtolower($_POST[’securitykey’]) === strtolower($_SESSION[’captcha_code’])) echo “Success: Captcha verified!”;<br />
else echo “Error: Captcha not verified!”;<br />
} else {<br />
?&gt;<br />
&lt;form id=”form1? name=”form1? method=”post” action=”&#8221;&gt;<br />
&lt;table width=”287? border=”0?&gt;<br />
&lt;tr&gt;<br />
&lt;td width=”54?&gt;Name:&lt;/td&gt;<br />
&lt;td width=”217?&gt;&lt;input type=”text” name=”textfield” /&gt;&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;Address:&lt;/td&gt;<br />
&lt;td&gt;&lt;input type=”text” name=”textfield2? /&gt;&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td colspan=”2?&gt; &lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;Secutiry image: &lt;/td&gt;<br />
&lt;td&gt;&lt;img src=”getimage.php?&lt;?php echo time(); ?&gt;” alt=”&#8221; name=”captcha” width=”155? height=”45? id=”captcha” /&gt;&lt;br /&gt;<br />
&lt;a href=”javascript:void(0);” onclick=”document.images[’captcha’].src =’getimage.php’+ ‘?’ + (new Date()).getTime();”&gt;Reload Captcha&lt;/a&gt; &lt;br /&gt;<br />
&lt;input name=”securitykey” type=”text” id=”key” /&gt;&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td colspan=”2?&gt; &lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt; &lt;/td&gt;<br />
&lt;td&gt;&lt;label&gt;<br />
&lt;input name=”submitform” type=”submit” id=”submitform” value=”Submit” /&gt;<br />
&lt;/label&gt;&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;/table&gt;<br />
&lt;/form&gt;<br />
&lt;?php<br />
}<br />
?&gt;Semoga bermanfaat…</p>
]]></content:encoded>
			<wfw:commentRss>http://taujago.web.id/index.php/2008/02/03/melindungi-form-dari-serangan-worm-dengan-captca/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Konversi nama bulan tanpa if then else</title>
		<link>http://taujago.web.id/index.php/2008/01/21/konversi-nama-bulan-tanpa-if-then-else/</link>
		<comments>http://taujago.web.id/index.php/2008/01/21/konversi-nama-bulan-tanpa-if-then-else/#comments</comments>
		<pubDate>Mon, 21 Jan 2008 09:41:18 +0000</pubDate>
		<dc:creator>Firman</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://taujago.web.id/index.php/2008/01/21/konversi-nama-bulan-tanpa-if-then-else/</guid>
		<description><![CDATA[Seringkali kita membuat kode yang memang sudah benar tetapi kurang efisien dan cost yang dibutuhkan tidak efektif. misalkan program untuk mengkonversi bulan dalam bentuk angka menjadi nama bulan.
&#60;?
$bulan = 1;
if($bulan == 1) $nama_bulan=”Januari”;
else if ($bulan == 2 ) $nama_bulan = “Februari”;
else if ($bulan == 3 ) $nama_bulan = “Maret”;
else if ($bulan == 4 ) $nama_bulan [...]]]></description>
			<content:encoded><![CDATA[<p class="entry">Seringkali kita membuat kode yang memang sudah benar tetapi kurang efisien dan cost yang dibutuhkan tidak efektif. misalkan program untuk mengkonversi bulan dalam bentuk angka menjadi nama bulan.<span id="more-13"></span></p>
<blockquote><p>&lt;?</p>
<p>$bulan = 1;</p>
<p>if($bulan == 1) $nama_bulan=”Januari”;</p>
<p>else if ($bulan == 2 ) $nama_bulan = “Februari”;</p>
<p>else if ($bulan == 3 ) $nama_bulan = “Maret”;</p>
<p>else if ($bulan == 4 ) $nama_bulan = “April”;</p>
<p>else if ($bulan == 5 ) $nama_bulan = “Mei”;</p>
<p>// ……dst….</p>
<p>?&gt;</p></blockquote>
<p>Sebenarnya kode ini sudah benar tetapi kurang tepat. Padahal kita bisa menyelesaikan kasus di atas menggunakan array. Scripnya sbb :</p>
<blockquote><p>&lt;?</p>
<p>$bulan_angka = 2;</p>
<p>$bulan=array(1=&gt;”Januari”,”Februari”,”Maret”,”April”,”Mei”,</p>
<p>“Juni”,”Juli”,”Agustus”,”September”,”Oktober”,”November”,”Desember”);</p>
<p>$nama_bulan = $bulan[$bulan_angka];</p>
<p>?&gt;</p></blockquote>
<p>Gimana ? lebih efisien bukan ?</p>
]]></content:encoded>
			<wfw:commentRss>http://taujago.web.id/index.php/2008/01/21/konversi-nama-bulan-tanpa-if-then-else/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
