Thursday, December 21, 2006

Script Captcha di PHP

Lagi iseng nih gak ada kerjaan udah gitu tangan gatel buat ngeblog hehe, ok kita mulai yah.
Captcha sebutan buat image kecil yang berisi kode untuk verifikasi simple biasanya dipergunakan untuk menghindari submit otomatis dari bots, berikut contohnya :
sebenernya simple banget, flownya gini, pertama kita siapin karakter acak, lalu kita siapkan image *tentunya dengan menggunakan GD Library yang ada di PHP*, dan masukkan karakter tersebut ke image yang telah kita siapkan, simple kan? ok let's coding..

1. $result = md5(microtime() * 1000);
2. $result = substr($result, 0, 6);
3.
4. $im = imagecreate(90, 29);
5. $background_color = imagecolorallocate($im, 0xFF, 0x80, 0x00);
6. $text_color = imagecolorallocate($im, 0x02, 0x01, 0x00);
7. $line_color = imagecolorallocate($im, 0xFF, 0xFF, 0xFF);
8.
9. header("Content-type: image/png");
10. imagestring($im, 9, 5, 5, $result, $text_color);
11. imageline($im, 0, 0, 39, 29, $line_color);
12. imageline($im, 40, 4, 139, 29, $line_color);
13. imageline($im, 80, 4, 139, 98, $line_color);
14. imageline($im, 90, 4, 19, 8, $line_color);
15. imagepng($im);
baris 1-2 kita membuat karakter acak, microtime() * 1000 untuk membangkitkan bilangan acak lalu kita masukkan bilangan acak tersebut ke funsi md5() untuk mengacaknya lagi, lalu kita ambil 6 karakter dari depan dengan fungsi substr()

baris 4-7 kita mempersiapkan imagenya beserta warna yang akan kita gunakan,
imagecreate(90, 29) untuk membuat image, imagecolorallocate($im, 0xFF, 0x80, 0x00) untuk membuat warna yang akan kita gunakan, 0xFF, 0x80, 0x00 dsb. itu adalah bilangan hexa dari sebuah warna.

baris 9-15 kita tampilkan imagenya,
header("Content-type: image/png") untuk menampilkan image dengan keluaran png, imagestring($im, 9, 5, 5, $result, $text_color) untuk memasukkan karakter yang telah kita buat ke dalam image, imageline($im, 0, 0, 39, 29, $line_color) untuk membuat garis acak.

Hasilnya kurang lebih seperti ini *border putih tidak termasuk* :
Simple kan, dari script diatas kita bisa memodifikasinya lagi dengan sedemikian rupa entah warnanya bisa dinamis atau juga fontnya, bagaimana dengan autentikasinya? mudah, kita tinggal persiapkan session untuk menampung variable karakter yang telah kita buat lalu kita cocokkan dengan input dari user.
Ok segini dulu, mo sholat isya' dulu ah abis itu pulang ;)

Tuesday, December 19, 2006

Super duper narcist :p

Huahahahaha ampun deh narcist banget :p, hehehe iseng gak ada kerjaan ya udah maenin photoshop aja :D, pengennya si buat vektor gitu tapi ternyata gak bisa masih bitmap juga =))

Friday, December 15, 2006

Semakin merasa kecil...

Semakin merasa aku bukan siapa-siapa maupun apa-apa, semakin merasa kecil.

Thursday, December 14, 2006

A’a Gym

Perlahan sinar yang beberapa waktu lalu masih terlihat terang sekarang mulai memudar, yap beliau adalah A’a Gym, bagi gw beliau adalah ikon revolusi kepribadian, seorang bapak yang sangat teramat pantas buat dijadikan panutan, contoh pemimpin kharismatik yang dibutuhkan bangsa ini untuk perubahan dan perbaikan kepribadian. Seperti kita ketahui sekarang beliau lagi banyak dibicarakan seputar keputusannya untuk berpoligami.

Belakangan gw kecewa dan merasa kesal dengan sikap sebagian masyarakat kita yang bersikap tidak dewasa menanggapi keputusan A’a untuk berpoligami, ada yang berdemo, “menyerang” atau sekedar mencemooh beliau, tindakan yang gak pantas dilakukan oleh orang² yang udah berumur –kalo gak bisa disebut dewasa-, mereka seakan melihat hal tersebut sebelah mata, “A’a Gym ngomong doank”, “A’a Munafik” dan berbagai macam cemoohan keluar dari mulut orang² yang kaya’ anak kecil bagi gw. Walau gw sendiri gak tau penyebab pasti kenapa beliau berpoligami, tapi yang jelas yang ada dipikiran gw, beliau tentunya sudah sangat teramat matang untuk mengambil keputusan tersebut, toh beliau pasti sadar akan posisi beliau sebagai ulla (ulama) maupun sebagai panutan orang banyak, jadi gak mungkin klo beliau mengambil keputusan tersebut dengan tergesa-gesa, gak hati-hati atau yang paling parah mengambil keputusan hanya karena nafsu belaka. Gw juga ngerasa pasti ada sesuatu hal yang sangat genting, penting sehingga seakan² hal tersebut membuat beliau ‘terpojok ke sudut yang paling sempit’, sampai beliau harus memutuskan “ya saya harus menikahi dia”.

Pandangan sinis gw, orang² haluan kiri seakan melihat kejadian tersebut sebagai satu kesempatan emas bagi mereka, mereka mencoba memperkeruh suasana lewat media yang mereka bisa bayar untuk menyebar kebohongan *gw ngerasa itulah fenomenanya* ataupun memperburuk image A’a, bahkan sepertinya sayap mereka, mereka bentangkan di jalur birokrasi, sial!

Balik lagi ke sebagian masyarakat kita yang menyikapi keputusan A’a layaknya anak kecil yang baru bisa nyedot permen, masa’ si orang² yang udah berumur itu gak bisa husnudzon dikit, ngakunya udah dewasa!!, kalah sama anaknya A’a yang masih belasan tahun, beliau berucap “Semua sudah terjadi, pasti ada hikmahnya” tuh gak malu apa sama bocah!!, kasarnya gini deh siapa tau kan wanita yang dinikahinya itu udah terlalu pusing mikirin kelanjutan hidup anak²nya secara dia janda, sampe² dia mau melakukan suicide dan dia coba minta tolong ‘dicarikan’ calon sama A’a tapi emang gak ada yang siap sedang dia udah bener² stress mikirin hal tersebut diatas dan kemungkinan terburuknya adalah dia melakukan suicide. Terkesan terlalu mengada-ngada memang tapi setidaknya pikiran² seperti itu telah membuat kita gak su’udzon ke beliau dan minimal sikap kekanak-kanakan kita gak keluar.

Ya entahlah yang jelas gw gak setuju sama cara² orang² tersebut menyikapi keputusan A’a, lagian gw juga mau belajar dewasa, mau belajar untuk sadar kalo gw udah ada di fase dimana gw harus bersikap dewasa. Ayo maju terus A’ gw bersama A’a ;)

Sunday, December 10, 2006

Lagi seneng baca...

Lagh emang udah lama suka baca :P, tapi sekarang lagi seneng2nya baca2 buku tentang biografi/autobiografi orang, pergerakan perjuangan suatu agama/bangsa/organisasi/ yang lain, isu politik nasional/internasional, dan sejarah dunia.
*silent mode : on*