Pertarungan Keren di Film

Partai adalah perkelahian 1 lawan 1. Nah ternyata banyak film yang menunjukkan partai tersebut.

Pekerjaan di Social Media

Social Media sekarang ini sedang berkembang dengan pesat. Mau tahu lebih jauh tentang pekerjaan social media?

Tutorial Paging dengan Codeigniter

Ternyata Paging bisa dilakukan dengan Codeigniter. Bagaimana cara membuat paging itu?

Ijazah dan Sertifikasi

perlu gak seh sertifikasi? Kan uda ijazah. Mari kita bahas lebih jauh disini

Identik : Rivalisme

Rival perlu untuk kehidupan sehari-hari sebagai cermin diri kita untuk menjadi yang lebih baik

Monday, July 28, 2014

November Naik Gunung (Harus apa Bullshit [?])

Halo, selamat malam.. Sebelum saya ingin mengucapkan selamat idul fitri untuk semua yang merayakan lebaran besok. Kalau ada salah, mohon dimaafkan, kalau ga mau maafin ya gw bully aja lo ya.. Bercanda deng hehe. Semoga di hari yang fitri ini kita bisa saling memaafkan. Nah kali ini saya akan sedikit menulis mengenai perjalanan panjang menuju puncak gede #halahnaikjugabelum. Cerita ini dimulai ketika Sabtu kemaren kita berkumpul. Begini ceritanya... 


 
Sabtu kemarin, gw dan beberapa temen gw ngumpul bareng. Teman-teman gw ini adalah Bene, Raff, Babang, Toro, Jody, dan Jawir. Sebenarnya kita mau nongski di the breeze (bukan breast ya). Tetapi karena waktu itu tiba-tiba thor turun akhirnya kita memilih untuk nongkrong di teras kota. Sebenarnya ke teras kota itu juga ga sengaja, karena kebetulan gw lagi mau beli dompet. Eh tiba-tiba si bank ki moon dateng juga ke teras kota. Akhirnya kita memutuskan untuk ketemu di teras kota. Gw sama bank ki moon akhirnya ngobrolin gadget barunya yakni asus zenfone. Oke juga sih, gw jadi pengen beli hehe. Ga lama kemudian datanglah si toro atau bene dulu ya, gw agak lupa. Lalu muncullah si jawirisme, dan akhirnya si babang. Sebenarnya gw agak kasihan sama si babang karena dia uda nyampe di breeze eh malah disuruh ke teras kota, sampe di teras kota eh masih di bully juga. 

Setelah semua lengkap kita pun mulai ngobrol-ngobrol dan ngelantur gak jelas, biasalah ngomongin politik dan tetek bengeknya. Teman-teman gw ini katanya ada yang ngintilin prabowo ternyata akhirnya di phpin. Ngintilin jokowi pake cara jablay kabur dari cengkeraman satpol pp. Jadi buat pengetahuan aja, kata temen gw yang suka ngejar jokowi itu susah banget. Beliau hampir ga punya jadwal yang pasti, jadi kalau mau ngejar dia harus siapin tukang ojek. Jadi begitu dia kabur langsung deh ngejar juga hehe... Yah begitulah pengalaman temen gw. Ga cuma itu kita juga ngobrolin tentang film terbaru karya bank ki moon dan watchdog yakni yang ketujuh (kalau gak salah). Ceritanya tentang jokowi gitu, tapi kalo kata anak-anak kemaren tuh film semoga ga cuma teasernya aja yang keren, karena biasanya si bank ki moon ini bikin teaser doank tapi filmnya kagak dibuat-buat. Mulai dari labuan bajo, makrab dan yang lainnya. Pokoknya gitu lah..

Setelah ngobrol cukup lama, akhirnya si bank ki moon akan pergi duluan karena ingin menjemput manda. Disinilah terjadi sebuah momen akward. Waktu si bank ki moon bilang mau jemput manda, tiba-tiba muncullkah sebuah pertanyaan maha sakti dari babang. "Emang kalau pacaran harus jemput-jemputan ya?". Tiba-tiba si bene sama jawir mendadak termenung dalam waktu 3 detik. Lalu terdengar tertawa yang cukup keras dari tempat kita. Itulah ada pertanyaan mudah yang sulit dijawab. Tapi sebenarnya agak aneh juga kalau dijawab. Tetapi menurut pengamatan si Jawir, kalau yang namanya pacaran udah mulai itung-itungan, sebenarnya pacaran itu udah gak tulus. Pacaran itu gak butuh logika... Begitulah kata maha Guru Jawir yang sudah melenggang ke berbagai tempat bahkan katanya ada mantannya yang kalau mau telepon aja harus nunggu kedatangan pesawat. (Gw agak lupa ceritanya gimana tapi pokoknya ada pesawat-pesawatnya gitu lah). Gak lama setelah ketawa-ketiwi itu akhirnya si bank ki moon pergi untuk menjemput manda.

Jadi sekarang kita tinggal berlima, gw, toro, bene, babank sama jawir. Kita pun makan dulu di Solaria maklum waktu itu jam sudah menunjukkan pukul 8 malam. Jadi kita makan dlu, sembari makan kita pun ngomongin jale, ya emang hidup wartawan ga jauh-jauh dari jale. Ga lama berselang, tiba-tiba dapet WA dari si Fejod, dan ini sejenis ngehe gitu. Katanya jawaban kalian akan menentukan apakah si Jody akan masuk ke parkiran atau gak? what the duck banget kan? Akhirnya dia bergabung dengan kita. Tapi pas dateng pun sejenis ngehe gitu. Kenapa bisa dibilang ngehe? Ya karena datangnya sejenis anggota F4 gitu, hahaha tae banget emang manusia yang satu ini. Setelah itu pun kita melanjutkan perbincangan kita. Ya perbincangan kita berlanjut mengenai zodiak. Begini cerita penerawangan dari Suhu Liang.

Jadi berdasarkan penerawangan Suhu Liang mengenai zodiak :
1. Aries itu adalah pemimpin, no satu dari semua pemimpin. Leo no empat (Kasian deh lo ben hahaha). Yang paling ngenes capricorn. Paling bontot.
2. Capricorn tuh cocoknya sama sagitarius dan gemini (kalau gak salah).
3. Leo cocoknya sama Aquarius. Cie Bene.
4. Aries cocoknya sama Sagitarius. Nih Sagi kayaknya cocok ama semua.
5. Scorpio Zodiak yang masih misterius dan tidak dapat diterawang oleh Suhu Liang.
6. Cancer orangnya misterius, ya Jodi itulah.

Demikianlah pengantar dari Suhu Liang. Kalau mau follow orangnya silahkan saja disini. Setelah ngobrolin zodiak akhirnya kami pun harus pergi dari teras kota karena emang teras kotanya udah mau tutup haha... Jadinya kami pun pindah ke McD di deket Foresta. Tapi bukannya sepi kami dapat, malah rame bin ampun-ampun. Bukannya pada banyak-banyak doa mau takbiran malah ngumpul-ngumpul ga jelas ckckck.. Akhirnya di McD kita cuma numpang taro motor trus ke serpong buat cari makan di ropang.

Sesampainya di Serpong, kita gak langsung ke ropang karena si Jawir kebelet pipis. Jadi kita mampir dulu ke pom bensin. Eh disana malah ketemu si Fenny. Kalo kata anak-anak dia sekarang udah ga se wow dulu. Udah gak jadi bom sex, malah kelihatan kayak mak2. Ya udahlah, namanya juga umur udah nambah, masa pengen keliatan kayak bom sex terus? Iya gak? Setelah ngobrol sama si bom sex akhirnya kita menuju ropang. Sayangnya ropang yang biasa kita makan lagi penuh, jadinya kita menuju ropang ujung (emang ada bedanya?). Sesampainya disana kita ketemu mando sama steven, salah satu dari trio UMN. (Kalo kata si tito sama wafi gitu, karena daridulu kalau kemana-mana selalu pake baju UMN.).

Kita pun ngobrol-ngobrol lagi sampai akhirnya si mando pun berpisah sama steven karena dia uda mau balik. Pas ngobrol-ngobrol sama mando akhirnya kita ceritain bahwa sebenarnya kita udah mau naik gunung, cuma ya gitu dari dulu bullshit2 terus. Bayangin aja kita udah bentuk grup WA dari zaman sebelum lulus wisuda ampe sekarang udah ganti nama (Seharusnya) Naik Gunung, ampe berubah lagi jadi November Naik Gunung. Lo bayangin, revolusi Amerika aja gak sampe 3 kali ini kita uda 3 kali gak gerak2 juga. Kalau kata si Arda, Gusti aja kagak pake grup2an uda naik gunung, lah kita uda grup buat dari kapan tau kagak naik2 wkwkwk.. Yah begitulah, tapi apa daya, kita harus Naik gunung. Masa uda segede gini belum naik gunung juga? Malu tuh ama burung... (Lah apa hubungannya?)

Jadi konklusinya dari pertemuan malam minggu kemarin adalah.
1. November kita akan naik gunung [?].
2. Sebelum naik gunung, tiap sabtu kita mau latihan fisik dulu [?].
3. Kalau punya pacar terus uda mulai itung-itungan artinya uda mulai gak tulus pacarannya.
4. Ingat kalau punya pacar harus dijemput, kalau gak dijemput mesti tanya alasannya sama Suhu Liang.
5. Aries itu pemimpin dari segala pemimpin [tetep].
6. Aries cocoknya sama Sagitarius dan Gemini. [Mana neh cewe2 gemini n Sagitarius].
7. Scorpio masih kalah sama Tiger. (Tai banget si Bene).
8. Kita juga pengen jalan2 ngiter pulau Jawa naek Mobil [tau dah nih bullshit lagi apa enggak].
9. Tak kenal lelah maka tak sayang.

Demikian dari saya, Wasalam.

Friday, April 18, 2014

Sang Revolusioner


Akhir-akhir ini gw lagi seneng banget baca komik yang satu ini. Ya gambar di atas adalah salah satu tokoh terkenal di komik One Piece, namanya Sabo. Dia adalah orang no 2 dalam tentara revolusi setelah Dragon. Komik One Piece menurut gw cukup keren karena bercerita tentang polemik politik yang ada di kehidupan nyata khususnya Indonesia. Dimana ada orang-orang yang berada dalam pemerintahan namun menjadi pelindung dalam dunia gelap. Yah, tapi bukan itu yang pengen gw ceritain disini hehe...

Tanggal 5 April kemarin gw berulangtahun yang ke 23 (udah tua ya gw). Ya gak ada yang istimewa dari ulangtahun ini, bahkan banyak temen-temen gw yang gatw dan kemudian ngucapin belakangan. Maklum gak ada orang yang ngucapin di social media jadi gak ada yang tahu gitu. Ya gw emang sengaja diam-diam aja. Soalnya ulangtahun yang kali ini udah agak berbeda dengan yang dulu-dulu. Kenapa demikian? Karena gw udah gak dapat kado lagi dari om dan tante gw, udah gak ada lagi yang ngasi uang. Malah sebaliknya gw harus mulai mentraktir. Itulah alasan kenapa gw menyembunyikan ulangtahun gw, cukup yang bener-bener ingat sama ulangtahun gw yang nyelamatin gw. Tapi semua sudah berlalu, beberapa hal telah menyita perhatian gw. Berikut sedikit ceritanya.

Malam sebelum ulangtahun, gw sama beberapa temen gw sempet jalan-jalan bareng ke kemang buat nyari cabe-cabean (bullshit hahaha). Karena udah lama gak ketemu, kita sempat ngobrol panjang. Lebih tepatnya seh kita ngomongin orang. Cerita tentang kehidupan orang ini bisa dibaca lebih lanjut disini . Nah beberapa pembicaraan mendadak menjadi melow begitu karena seorang teman gw mulai bernostalgila, sebut saja nama teman gw ini adalah Jawir. Dia bercerita mengenai kalau belum lama ini dia magang dengan seorang teman gw. Nama orangnya sebut saja Arda. Mereka bekerja magang di tribunnews kalau gak salah. Dulu mereka sempat balik bareng dan sempat kenalan. Setelah itu lambat laun, mereka berdua menjadi teman dekat dan suka kumpul-kumpul bareng termasuk mabok. Tiba-tiba si Arda mulai berbicara mengenai isi hatinya. Dia bilang kalau tahun 2013 adalah tahun yang cukup down dan cukup menguras emosi jiwa dan raga? Kenapa dia bisa bilang demikian? Karena itu jamannya skripsi laknat. 

Skripsi memang merupakan momok bagi semua mahasiswa tingkat akhir. Bahkan ada yang dulu statusnya Mahasiswa menjadi Mahasisa. Kenapa bisa demikian? Karena gak lulus-lulus bro, makanya jadi mahasisa lah tersisa. Nah karena skrispi itulah kami semua mulai meradang. Arda sempet cerita kalau dia hampir sebulan penuh tidak ke kantor. Tapi hasil jerih payah kami semua akhirnya terbayar dengan lulusnya dengan nilai yang cukup memuaskan yakni A. Selain itu, kami semua akhirnya bisa wisudaan bareng. Kalau dulu sempet ada yang bilang ke gw (kaka kelas waktu sma), dia bilang "Kalau MOS Bareng, maka lulusnya bareng". Perumpamaan itu kurang berarti waktu kuliah. Karena kalau uda kuliah, maka perumpamaannya jadi "Ospek Bareng, Skripsi Bareng, Lulus Bareng (Kalau semuanya bareng2 bener)". Yah begitulah pokoknya.. Setelah lulus pun temen gw sempet bilang kalau tahun 2014 ini dia sama sekali gak ada niatan untuk nabung. Dia pengen jalan-jalan terus.. Konsep inilah yang menjadikan revolusi gw waktu itu.

Beberapa dari kami sempat bicara bahwa, ada masa diantara lulus kuliah dan kerja yang dipakai oleh beberapa orang untuk jalan-jalan. Tetapi ada juga yang begitu lulus pada kerja, kayak kami pada umumnya. Si Arda pun memutuskan untuk bersenang-senang sampai umur 25 tahun. Menurutnya setelah umur 25 tahun itulah, seorang laki-laki memutuskan hal-hal yang lebih mengarah ke masa depan seperti menyiapkan biaya pernikahan, biaya rumah dan masih banyak tetek bengek rumah tangga yang lainnya. Saat berbicara seperti itu, Jawir pun ikut nimbrung dan mulai melakukan hitung-hitungan yang menurut gw agak menusuk hati (lebay). Dia bilang, kalau kita ngumpulin gaji 1 juta aja tiap bulan, paling banter diumur yang ke 30, kita cuma baru punya uang 110 Juta. Shit banget kan?

Yah memang menurut gw di usia yang masih muda ini (udah tua seh sebenarnya), sudah seharusnya gw memikirkan hal-hal yang jauh ke depan. Tetapi di sisi lain temen-temen gw selalu mengingatkan bahwa hidup harus dinikmati. Mengapa demikian? Karena waktu terus berjalan, dan tidak mungkin kembali lagi. Selain itu tanggungjawab yang dipikul semakin berat terlebih para kaum pria. Bayangkan saja ketika nanti sudah umur 26 tahun trus pacar lo juga seumuran. Tiba-tiba dia ngajakin ngomong serius tapi santai kayak begini : "Ceritanya lo lagi makan, trus cewek lo ngomong begini : Sayang, tadi pagi mama ngomong kalau dia pengen segera nimang cucu. Nah lo khan? " Bingung gak loh dapat pertanyaan begitu? Makanya sebelum kata-kata itu keluar dari mulut cewek mending banyakin seneng-seneng. Let it go aja lah, namun tetap selektif.

Oh iya, mengenai masalah selektif. Ini masalah yang menurut gw sering dibicarain temen-temen gw. Katanya kalau cari pacar jangan terlalu selektif, nikmati aja dulu. Yah elah bro, kalau begitu bukan cari pacar namanya, cuma cari temen yang buat diajak seneng2. Sori neh, gw seh bukan tipe yang pacaran kalau gak pantes terus tinggalin. Selain itu gak asik buat financial, kayaknya gak seru aja. Makanya gw cari yang selektif, biarin lama dapetnya. Toh ujung-ujungnya pasti dapet juga. Gw kan cowo, makin tua makin macho gua.

Dari perkumpulan bersama temen-temen gw itu maka gw mulai terbuka mengenai bahwa hidup ini harus bersenang-senang. Hidup cuma sekali, umur terus bertambah, tanggungjawab pun juga demikian, kemarin digendong sekarang menggendong. Kemarin dikasih uang, sekarang ngasih uang. Kemarin dipanggil dede, sekarang manggil dede. Dulu mama minta pulsa, sekarang mama minta cucu (buat cewe2 khususnya). Yah begitulah hidup, sebelum waktunya habis alangkah baiknya jalan-jalan dan bersenang-senang terlebih dahulu melihat indahnya dunia. Kalau liat yang busuknya, anggap aja jadi pelajaran. Kalau belum dapet pasangan, ya udah tunggu aja, tar juga dapet. Masih suka baca komik? Baca aja, karena kadang pelajaran hidup bisa datang darimana saja, termasuk komik.

Untuk tulisan kali ini, gw akan sedikit menutup dengan sepatah doa dari Fransiskus Asisi. Maklum ini kan Jumat Agung.

"Ya Tuhan, Jika terjadi sebuah kebimbangan, maka jadikanlah aku pemberi Kepastian".

Selamat malam, semoga tulisan ini bisa menjadi revolusi dalam hidup para pembaca sekalian. :D

Saturday, April 5, 2014

Naik Gunung !!!

Halo lama tak bersua... Udah lama banget neh, gua ga ngeblog. Ternyata banyak banget yang nungguin cerita seru yang biasa gw bikin. Oke lah kalau begitu... Mari kita mulai cerita seru hari ini dengan menulis kisah gw sama temen-temen kampus naek gunung.  

Oke cerita ini bermulai dari beberapa bulan sebelum wisuda, jadi ceritanya beberapa temen2 gw ingin jalan-jalan naik gunung sebelum wisuda. Tapi apa daya karena bullshit-bullshit anak kampus ya ujung-ujungnya gak jadi. Bahkan ampe sekarang juga belum kesampean. Tetapi ada yang unik dari kisah yang satu ini. Jadi, agar dapat merealisasikan kegiatan naik gunung ini akhirnya, salah seorang dari kami membuat sebuah grup di whatsapp. Nama grupnya adalah naik gunung, tujuannya apalagi kalau bukan seputar persiapan kita untuk naik gunung. Grup ini dibuat kalau gak salah bulan Desember. Saat itu kami memutuskan untuk naik gunung pada bulan Maret. Dan apa daya akibat ke bullshitan ampe bulan April (sekarang), belum ada kabar mau naek gunung. Alasannya simple, "Ujan bro, kita kan nunggu gak ujan...". Yah okelah, tapi sisi seru dari cerita bukan pada naik Gunungnya. Tetapi karena ada temen kita yang sedang kesepian... Berikut ceritanya buehehe...

Hari Kamis, tiba-tiba seorang teman kami melakukan chat di grup Naik Gunung. Nih Grup entah kenapa cuma aktif kalau gak ngurusin bola, mabok, acara teater dan gosip-gosip gak jelas lainnya. Naik Gunungnya? Yah udahlah itu urusan lain aja.. Nah sebut saja temen kita yang membuka chat ini bernama Jawir (Nama samaran, jika ada kesamaan itu cuma kebetulan). Tiba-tiba dia ngepost, eh gila temen gw baru ada yang balik dari kiluan loh bareng vokalis kangen band (Tokoh disamarkan). Mulai lah dari situ terjadi balas-balasan chat, kebetulan gw juga pengen ngobrol sama Jawir mengenai band asal Jogja yang cukup terkenal di masanya (Eh sekarang masih terkenal deng). Akhirnya tercetuslah ide dari Arda (Nama samaran, jika ada kesamaan itu cuma kebetulan), gimana kalau ketemu aja? Berhubung udah lama kita gak ketemu, akhirnya kita memutuskan untuk bertemu di Salihara pada hari Jumat jam 10 malam abis liputan.

Hari Jumat pun tiba, pas gw mau berangkat ke Salihara jam 8.30 malam, tiba-tiba ujan deres. Berhubung ujan, gw pun melanjutkan nonton kera sakti di B Channel. Entah kenapa orang-orang grup ini ga seneng banget gw nonton kera sakti, padahal filmnya tuh sekeren walking dead di Fox Movies Premium. Ya udah, kita lewati saja dulu masalah kera sakti. Nah sesampainya di Salihara, kita pun langsung makan ke tempat nasi goreng Salihara. Pas makan mulailah si Jawir meluncurkan aksi mengeruk isu dari teman kita LT(Nama di inisialkan demi melindungi tersangka? lah!). LT pun bercerita kalau dia mengingat tragedi nasi goreng pada tahun 2011 dulu. Dia sempat ingin menembak seseorang, eh ga deng, cuma pengen mengungkapkan perasaan. Yah pokonya gitu lah.... Namun berhubung, tempat kurang asik, akhirnya kita pindah venue.. 

Nah, pas kita mau pindah venue, gw menyadari bahwa gw melalui jalan waktu gw berangkat ke sekolah waktu sma dulu. Jujur aja, gw agak terharu, karena gak nyangka udah hampir 5 tahun berlalu semenjak gw SMA. Masa yang pengen diulang, masa dimana kalau cabut pasti ke makmur (Mekdi Murah, sebenarnya nama warteg eh tapi wartegnya udah gak ada sekarang). Terus berhubung udah bertahun-tahun ga lewat sini, jujur aja gw bingung sama jalan disini, apalagi pas menuju salihara dari arah pejaten barat, itu agak ngebingungin gara-gara ada sevel dan family mart. Untung kaga nyasar gw. Dan akhirnya kita sampai tujuan, yakni McD Kemang. Eh tapi sebelum nyampe McD, kita sempet ketemu cabe-cabean... Bolehlah sekali-kali kita ngobrol ama cabe-cabean...

Oke, sampai di McD. Curcol si LT pun berlanjut... Jujur aja, banyak cerita yang bisa ditulisin disini cuma berhubung off the record yah jadi ceritanya gak akan gw tulis. Cukup yang udah populer yakni kisah cinta LT dan si tukang minuman ale-ale (Nama disamarkan untuk menghindari kecurigaan terhadap pihak-pihak terkait.). Ini cerita jujur gw agak ngakak karena dari awal cerita aja udah buat excited untuk diceritain. Jadi ceritanya si LT ini bisa kenal sama si ale-ale dengan nganterin si ale-ale ini pulang ke kosannya bareng temennya namanya kembang kol (Nama disamarkan untuk menghindari kecurigaan terhadap pihak-pihak terkait.). Nah yang bikin buat gw ngakak adalah kejadiannya ketika LT, ale-ale, kembang kol naik motor ceng3. Shitman, lo kebayang seh... (Udahlah gak usa dibahas, ngakak gw kalo inget ini). Semenjak itu, si LT pun mulai mencari tahu si ale-ale ini dari twitter. Sampai akhirnya sempet rusuh di twitter dulu. Yah, tapi pada akhirnya kisah cinta ini berakhir tragis karena si ale-ale jatuh kekasih yang lain... Si LT pun, terombang-ambing. Begitulah cerita yang gw dapet, sisanya gak usah diceritain lah, ini gw juga disuruh cerita ama si Jawir haha..

Setelah selesai masalah cinta LT pun, seorang temen gw bernama Bene dan juga Vivi  pun pulang. Dari situ kita mulai cerita mengenai masalah karir masing-masing, dan mulai flashback, ternyata waktu berjalan cepat sekali ya, padahal kayaknya baru kemarin kita masih semester 1. Nah, ada beberapa hal yang seru dikutip dari kata-kata bung Jawir sampai saat ini masih terngiang di kepala gw : 

1. Jika ngegebet cewek, dan pengen ngajak jalan cewek. Pastiin bawa helm dua, bodo amat mau dia pulang bareng atau kagak. Selalu mempersiapkan diri itu baik. 
2. Jangan sok selektif, nikmatin aja dulu. Nah ini gw gak setuju, kalau bisa milih kenapa gw gak milih. Kalo bilang susah dapet yang cakep, coba liat aja LHI sama Darin, masih mungkin kan buat dapet yang cakep?
3. Expectation Kills. Ini dia quote of the day, jangan pernah berasumsi dulu, udah sikat aja. Ntar malah lo ga dapet apa-apa kalau gak ada action.
4. Jangan terlalu agresif (kalau kata LT). Sebenarnya gw pengen cerita, tapi ya udahlah...
5. Yuk jalan-jalan kemanapun sebelum usia 25 tahun, karena setelah itu, semua akan mulai panik (Ada yang tanya kapan nikah, pacar udah pengen ngajakin kawin, mamanya pacar minta cucu dan masih banyak yang lainnya)
6. Cobalah nyemplungin handphone ke laut, siapa tau dapet Iphone...

Demikian sedikit cerita gw, semoga berguna bagi kita semua.. Jangan lupa klik iklan gw nyet... Jangan cuma ketawa-ketawa aja ler...

Sunday, August 11, 2013

Tutorial Codeigniter : Pemodelan Administrator

Halo, selamat siang semua. Akhirnya setelah puluhan tahun tidak menulis, bisa nulis juga hehe. Sebenarnya ini terjadi akibat skripsisme, revisitalisme, dan sidangisme. Memang tidak dapat dipungkiri bahwa skripsi telah menghabiskan seluruh jiwa dan raga untuk dapat menyelesaikannya. Tetapi sesuai dengan kata kasino dalam film warkop DKI yang berjudul Mana Tahan, maka segala sesuatu yang punya awalan pasti ada akhiran. Jadi skripsi dimulai ujung-ujungnya kelar juga. Demikian. eh kok ini malah ngomongin skripsi gw ya. Oke kali ini gw akan sedikit membahas mengenai tutorial php, khususnya penggunaan codeigniter.

Seperti yang kita ketahui, bahwa dalam membuat sebuah website yang memiliki CMS maka dibutuhkan sebuah direktori khusus untuk halaman administrator. Sebagai contoh untuk website www.unyu.com, maka untuk memanggil halaman admin akan dipanggil dengan cara seperti ini www.unyu.com/admin. Cara seperti itu akan ampuh, kalau kita mendevelop web menggunakan native php tanpa bantuan framework. Lalu bagaimana jika mendevelop dengan bantuan framework terutama dengan menggunakan codeigniter. 

Dalam membangun administrator panel dengan menggunakan codeigniter terdapat 3 cara yang digunakan. Masing-masing memiliki kekuatan dan kelemahannya. Nah cara tersebut adalah sebagai berikut.

1.  Membangun 2 aplikasi.
Ini adalah cara yang diajarkan langsung oleh codeigniter. Dengan membangun 2 aplikasi yang berbagi 1 core system yang sama. Berikut gambaran proses penggunaan dengan menggunakan 2 aplikasi.

Gambar diatas merupakan isi dari folder application yang telah dipecah menjadi bagian frontend dan backend.


Setelah dibagi menjadi bagian backend dan frontend maka isi folder application yang asli dipindahkan ke masing-masing folder.


Lalu pada index.php ubah isi variabel application folder dengan applications/frontend.


Dan yang terakhir buat sebuah folder sejajar dengan folder application lalu beri nama folder terserah dengan yang kalian suka contohnya admin. Didalam folder tersebut copy index.php dan ubah isi variabel application folder dengan application/backend.

Cara ini dapat dibilang cukup menjengkelkan untuk aplikasi yang menggunakan library, helper, atau model yang sama karena masing-masing aplikasi menggunakan model, library, helper yang terpisah. Oleh karena itu, aplikasi ini sangat tepat digunakan untuk membangun aplikasi yang bagian depan dan belakang tidak berbagi data yang sama.

2.  Membangun subfolder.
Ini adalah cara yang biasa dipakai oleh para newbie codeigniter. Cara ini cukup elegant karena menggunakan routing dari codeigniter. Untuk dapat menggunakan cara ini biasanya newbie membangun subfolder dalam sebuah controller dengan nama 'administrator' (nama hanya sebagai contoh). Lalu setelah itu baru dimainkan di routing. Berikut gambaran proses penggunaan membangun subfolder.


Gambar diatas merupakan isi dari folder controller. Dalam folder controller dibuatlah sebuah subfolder yang diberi nama dengan backoffice yang berarti untuk admin panel.


 Didalam folder backoffice terdapat controller yang digunakan untuk admin panel.


Lalu, diaturlah routing pada folder config/routes.php. Routing agar bisa masuk admin panel adalah backoffice dimana ketika url ditulis backoffice maka akan memanggil controller admin dalam folder backoffice.

Cara ini merupakan cara newbie, sangat cocok untuk membangun aplikasi web yang skala kecil menengah. Tetapi, apabila aplikasi sudah pada skala raksasa (lebay) maka akan cukup merepotkan karena controllernya akan campur-campur.

3. Bermain dengan Module
Ini adalah cara yang digunakan oleh para pengguna codeigniter expert termasuk gw hahaha. Cara ini dibuat dengan tambahan thirdparty dari pihak lain. Untuk thirdparty dapat di download disini . Berikut gambaran proses penggunaan module dalam codeigniter. Cara ini juga biasa disebut dengan HMVC atau Hierarchical Model View Controller.



Gambar diatas merupakan folder MX yang harus dicopy ke dalam thirdparty milik codeigniter. Untuk mendapatkan folder MX tersebut ya download dulu dari link yang gw kasi diatas. Nanti baru deh di extract.



Isi dari folder MX adalah seperti yang tampak diatas. Isinya harus sama ya seperti yang diatas. Kalau beda gw ga tanggung kalo ga jalan.


Nah setelah kopi mengkopi tadi, mulai konfigurasi isi file config.php. Tambahkan sesuai dengan gambar diatas. Kalau diatas dapat ditulis modules. Cuma lo bebas konfiigurasi, kalau mau nama foldermya unyu juga boleh, ya pokonya terserah lo lah.



Nah gambar diatas merupakan isi dari folder modules. Disini gw pisahin secara frontend dan backend. Terserah lo mau nama modulnya apa, suka-suka lo aja.



Nah, sesuai yang gw bilang diatas. Di dalam folder frontend dan backend terdapat folder controller dan views. Masing-masing sifatnya modular artinya antara 1 modul dengan modul yang lain terpisah. Kalau mau tambahin model juga boleh, hanya aja biasa model dipakai bersama.



Dan yang terakhir adalah routing. Karena pada dasarnya frontend adalah folder maka pengaksesannya harus memanggil nama folder/controller sehingga jelek kalau di routing. Oleh karena itu lo harus atur routingnya biar oke hehe.

Cara ini merupakan cara terbaik saat ini khususnya untuk mereka yang ingin mengembangkan aplikasi skala raksasa (lebay) karena aplikasi dipisahkan modul by modul sehingga pengerjaannya bisa dilakukan secara keroyokan. 

Demikian sedikit tutorial dari saya, apa malah bukan tutorial ini disebutnya? ya udahlah ya.. jangan lupa diklik iklannya.

Saturday, March 16, 2013

Tutorial PHP : Menggunakan Library Image Processing

Halo, hari ini gw akan menulis sedikit mengenai tutorial php untuk image processing. Tutorial kali ini biasanya sangat dibutuhkan untuk developer dalam meresize gambar. Biasanya developer tidak mungkin memasukkan gambar dalam ukuran dimana user memasukan gambar. Jika hal itu dilakukan oleh seorang developer web maka sudah pasti developer tersebut masih dalam tahap belajar karena tidak mungkin meresize gambar melalui css yang dapat menyebabkan gambar menjadi terpotong. Oleh karena itu perlu dibuat sebuah fungsi khusus untuk meresize gambar sesuai dengan requirement yang diberikan. sebagai gambaran saja dalam proses upload image biasanya developer yang baik memenuhi syarat-syarat berikut.

1. Mengecek extension file. User bisa saja mengupload file yang bukan image, oleh karena itu perlu dibuat pencegahan di sisi server dan juga client (untuk menghemat bandwith).
2. Mengecek ukuran file. Apabila ukuran file yang dimasukkan terlalu besar, maka akan membahayakan bandwith web. Oleh karena itu perlu dilakukan pencegahan dari sisi server dan juga client (untuk menghemat bandwith).
3.  Mengecek orientasi gambar. Ini yang paling penting, karena dengan mengetahui apakah gambar itu portrait atau landscape maka secara otomatis kita bisa mengatur resize imagenya akan berdasarkan height atau width.

Oke, langsung aja berikut library image processing.

<?php 

/*
* File: image_proccessing.php
* Author: Simon Jarvis (2006)
* Link: http://www.white-hat-web-design.co.uk/articles/php-image-resizing.php
* Modified: Hendro Wibowo (2012)
* Link: http://www.tiwule.net/
* Modified: Immanuel Bayu Suryanto (2013)
* Link: http://bayu-immanuel.blogspot.com/
* Semua file dapat disebarluaskan dan dimodifikasi
* Library ini sangat berguna bagi developer namun tidak ada jaminan garansi dari pihak pertama.
*/

class SimpleImage {
   var $image;
   var $image_type;
   var $overwrite = TRUE;
   var $border = TRUE;
   var $ratio;
   var $min_width = 500;

   function load($filename) {
      $image_info = getimagesize($filename);
      $this->image_type = $image_info[2];
      if( $this->image_type == IMAGETYPE_JPEG ) {
         $this->image = imagecreatefromjpeg($filename);
      } elseif( $this->image_type == IMAGETYPE_GIF ) {
         $this->image = imagecreatefromgif($filename);
      } elseif( $this->image_type == IMAGETYPE_PNG ) {
         $this->image = imagecreatefrompng($filename);
      }
   }
 
   function save($filename, $image_type, $compression=100, $permissions=null) {
      if($this->overwrite == TRUE) $this->overwriteFile($filename);
      if($this->border == TRUE) $this->drawBorder('210,210,210');
      if($image_type == IMAGETYPE_JPEG ) {
         imagejpeg($this->image,$filename,$compression);
      } else if( $image_type == IMAGETYPE_GIF ) {
         imagegif($this->image,$filename);
      } else if( $image_type == IMAGETYPE_PNG ) {
         imagepng($this->image,$filename);
      }
      if( $permissions != null) {
         chmod($filename,$permissions);
      }
   }
 
   function output($image_type) {
      if( $image_type == IMAGETYPE_JPEG ) {
         imagejpeg($this->image);
      } elseif( $image_type == IMAGETYPE_GIF ) {
         imagegif($this->image);
      } elseif( $image_type == IMAGETYPE_PNG ) {
         imagepng($this->image);
      }
   }
 
   function getWidth() {
      return imagesx($this->image);
   }
 
   function getHeight() {
      return imagesy($this->image);
   }
 
   function resizeToHeight($height, $is_minimum_set = FALSE) {
      $this->ratio = $height / $this->getHeight();
      $width = $this->getWidth() * $this->ratio;
    
      $this->resize($width,$height);
   }

   function resizeToWidth($width) {
      $this->ratio = $width / $this->getWidth();
      $height = $this->getheight() * $this->ratio;
    
      $this->resize($width,$height);
   }
 
   function resizeWithMinToHeight($height) {
      $this->ratio = $height / $this->getHeight();
      $width = $this->getWidth() * $this->ratio;
    
      if($this->getWidth() > $this->min_width) $this->resize($width,$height);
   }

   function resizeWithMinToWidth($width) {
      $this->ratio = $width / $this->getWidth();
      $height = $this->getheight() * $this->ratio;
    
      if($this->getWidth() > $this->min_width) $this->resize($width,$height);
   }

   function scale($scale) {
      $width = $this->getWidth() * $scale/100;
      $height = $this->getheight() * $scale/100;
      $this->resize($width,$height);
   }

   function resize($width,$height) {
      $new_image = imagecreatetruecolor($width, $height);
      /* setel png dan gif jika transparan */
      if($this->image_type == 1 || $this->image_type == 3){
        imagealphablending($new_image, false);
        imagesavealpha($new_image,true);
        $transparent = imagecolorallocatealpha($new_image, 255, 255, 255, 127);
        imagefilledrectangle($new_image, 0, 0, $width, $height, $transparent);
        imagecopyresampled($new_image, $this->image, 0, 0, 0, 0, $width, $height, $this->getWidth(),  $this->getHeight());
      } else { /* untuk jpeg */
        imagecopyresampled($new_image, $this->image, 0, 0, 0, 0, $width, $height, $this->getWidth(), $this->getHeight());
      }
      $this->image = $new_image;
   } 
 
   function crop($x, $y, $target_w, $target_h) {
      $new_image = imagecreatetruecolor($target_w, $target_h);
      imagecopyresampled($new_image, $this->image, 0, 0, $x, $y, $target_w, $target_h, $target_w, $target_h);
      $this->image = $new_image;
   } 
 
   function drawBorder($color, $thickness = 1) {
      $x1 = 0;
      $y1 = 0;
      $x2 = imagesx($this->image) - 1;
      $y2 = imagesy($this->image) - 1;
    
      list($r, $g, $b) = explode(',', $color);
    
      $bordercolor = imagecolorallocate($this->image, $r, $g, $b);
    
      for($i = 0; $i < $thickness; $i++) {
        imagerectangle($this->image, $x1++, $y1++, $x2--, $y2--, $bordercolor);
      }
   }
   
   function overwriteFile($filename) {
      if(file_exists($filename)) {
          return @unlink($filename);
      }
    
      return FALSE;
   }
 
   function getImgRatio() {
       return $this->ratio;
   }
 
   function get_dpi($filename){  
           $a = fopen($filename,'r');
        $string = fread($a,20);
        fclose($a);
      
        $data = bin2hex(substr($string,14,4));
        $x = substr($data,0,4);
        $y = substr($data,0,4);
  
        return array(hexdec($x),hexdec($y));
    }
}

/**
 * End of file image_processing.php
 *
 */
Lalu bagaimana cara menggunakannya? Berikut cara pakainya.
<?php
include "image_processing.php";
  
$simple = new SimpleImage();

$timestamp = strtotime("now");

$filename1 = "17.jpg";
$filename2 = $timestamp."_".$filename1;

$filename3 = "17.jpg";
$filename4 = $timestamp."1_".$filename3;

$filename5 = "TsubasaOzora.png";
$filename6 = $timestamp."_".$filename5;

$filename7 = "banner.gif";
$filename8 = $timestamp."_".$filename7;

$simple->border = FALSE; //tanpa border

/* Resize width tanpa mengurangi kualitas image */
$simple->load($filename1);
$simple->resizeToWidth(400);
$simple->save($filename2, IMAGETYPE_JPEG);

/* Resize width dengan mengurangi kualitas gambar */
$simple->load($filename3);
$simple->resizeToWidth(400);
$simple->save($filename4, IMAGETYPE_JPEG, 50);

/* Resize width untuk gambar png background transparan */
$simple->load($filename5);
$simple->resizeToWidth(400);
$simple->save($filename6, IMAGETYPE_PNG);

/* Resize width untuk gambar gif */
$simple->load($filename7);
$simple->resizeToWidth(200);
$simple->save($filename8, IMAGETYPE_GIF);

echo $simple->getWidth()."<br>"; //dapatkan ukuran image dari gambar yang terakhir
echo $simple->getHeight()."<br>"; //dapatkan ukuran image dari gambar yang terakhir
echo $simple->getImgRatio()."<br>"; //dapatkan ratio image dari gambar yang terakhir

?>
Nah untuk gambarnya bisa cari sendiri ya, masa harus dikasih juga disini hehe. Oke demikian tutorial hari ini. Semoga berguna untuk para developer sekalian hehe.

Monday, March 11, 2013

Membuat login google connect dengan OpenID

Halo, akhirnya sempat lagi neh buat nulis. Berhubung gw lagi sibuk skripsi, jadi gw lebih sering koprek2 script deh. Nah jadi hari ini gw akan sedikit membuat tutorial mengenai API. Udah tahu API kan ya? API merupakan singkatan dari Application Programming Interface. API biasanya berjalan di client side, oleh karena itu memiliki tujuan agar tidak membebani server. Kali ini gw akan mengimplementasikan openID untuk login via google connect. Nah, supaya semua script ini berjalan, pastikan anda telah mengupload di server hosting karena koding tidak akan berjalan di server localhost.

Pertama kita buat halaman login sederhana beri dengan nama index.php
<?php
session_start(); //mulai session disini
if (isset($_SESSION['id'])) {
    header("location: home.php"); //jika terdapat session maka lempar ke home
}

if (array_key_exists("login", $_GET)) { //jika terdapat link login dapatkan providernya dengan get
    $oauth_provider = $_GET['oauth_provider'];
    if ($oauth_provider == 'google') {
        header("Location: login-google.php"); //olah data di login-google.php
    }
}
?>
<title>Google Openid Login</title>
<style type="text/css">
    body{
        background: #f1f1f1;
    }
    #buttons
    {
        text-align:center
    }
    #buttons img,
    #buttons a img
    { border: none;}
    h1
    {
        font-family:Arial, Helvetica, sans-serif;
        color:#999999;
    }

</style>



<div id="buttons">
    <h1>Google OpenID Connect </h1>
     <!-- gambarnya diupload juga ya gan -->
    <a href="?login&oauth_provider=google"><img src="images/googlebtn.png"></a><br/>
    <br />
</div>
Nah untuk gambarnya bisa didownload dari gambar ini : 


Setelah itu buat halaman untuk autentifikasi dengan nama login-google.php
<?php
// importing required files
require 'openid.php'; //load library google
// callback URL
define('CALLBACK_URL', 'namawebanda/getgoogledata.php'); // Isi dengan callback url


// calling login functions
gooleAuthenticate();

function gooleAuthenticate() {
    // Creating new instance
    $openid = new LightOpenID;
    $openid->identity = 'https://www.google.com/accounts/o8/id'; //openID scheme for google authentication
    //setting call back url
    $openid->returnUrl = CALLBACK_URL;
    //finding open id end point from google
    $endpoint = $openid->discover('https://www.google.com/accounts/o8/id'); //openID scheme for google authentication
    $fields =
            '?openid.ns=' . urlencode('http://specs.openid.net/auth/2.0') .
            '&openid.return_to=' . urlencode($openid->returnUrl) .
            '&openid.claimed_id=' . urlencode('http://specs.openid.net/auth/2.0/identifier_select') .
            '&openid.identity=' . urlencode('http://specs.openid.net/auth/2.0/identifier_select') .
            '&openid.mode=' . urlencode('checkid_setup') .
            '&openid.ns.ax=' . urlencode('http://openid.net/srv/ax/1.0') .
            '&openid.ax.mode=' . urlencode('fetch_request') .
            '&openid.ax.required=' . urlencode('email,firstname,lastname') .
            '&openid.ax.type.firstname=' . urlencode('http://axschema.org/namePerson/first') .
            '&openid.ax.type.lastname=' . urlencode('http://axschema.org/namePerson/last') .
            '&openid.ax.type.email=' . urlencode('http://axschema.org/contact/email');
    header('Location: ' . $endpoint . $fields);
}

?>
Jika sudah berhasil maka secara otomatis data tersebut akan dilempar ke file getgoogledata.php. Berikut scriptnya :
<?php

session_start();

if (!empty($_GET['openid_ext1_value_firstname']) && !empty($_GET['openid_ext1_value_lastname']) && !empty($_GET['openid_ext1_value_email'])) {    
    $username = $_GET['openid_ext1_value_firstname'] . $_GET['openid_ext1_value_lastname'];
    $email = $_GET['openid_ext1_value_email'];

    if(!empty($userdata)) {
       
        $_SESSION['username'] = $username;
        $_SESSION['email'] = $email;
        $_SESSION['oauth_provider'] = 'google';
        header("Location: home.php");

    } else {
        // Something's missing, go back to square 1
        echo "Ada error bro";
    }

}
?>
Setelah berhasil maka akan mendirect data ke home.php. Berikut scriptnya.
<?php

//Always place this code at the top of the Page
session_start();
if (!isset($_SESSION['id'])) {
    // Redirection to login page twitter or facebook
    header("location: index.php");
}

echo '<h1>Welcome</h1>';
echo '<br/>Nama Anda : ' . $_SESSION['username'];
echo '<br/>Email : ' . $_SESSION['email'];
echo '<br/>Anda login dengan menggunakan : ' . $_SESSION['oauth_provider'];
echo '<br/>Logout from <a href="logout.php?logout">' . $_SESSION['oauth_provider'] . '</a>';
?>
Nah, untuk library openID bisa dicari di google. Disana banyak kok hehehe.  Gw gak bisa diupload disini hehehe.. Demikian sedikit tutorial dari gw. Kalo ada kesulitan bisa langsung komen disini. Salam Unyu

Saturday, March 2, 2013

Film Kartun Masa Lalu Yang Bikin Kangen : Part Indosiar

Halo, khusus postingan kali ini gw akan sedikit menulis mengenai film khususnya film kartun hehehe. Berhubung gw lagi bosan bikin tutorial, jadi gw nulis begini deh. Nah kali ini gw akan ngebahas mengenai film-film kartun yang pernah tayang di indosiar. Mungkin anak-anak zaman sekarang kurang tahu bahwa zaman dulu itu, indosiar terkenal dengan film-film yang digandrungi oleh anak-anak kecil. Sayangnya, sekarang menjadi film-film nagaan yang very low budget abis yang berbagai karakter dari seluruh dunia ikut bercampur seperti spiderman, batman, naga, elang, gundam, wah udah gak ngerti lagi deh. Pokonya film kartun zaman dulu itu udah paling oke. Nah film kartun apa aja yang pernah tayang di indosiar. Berikut film-filmnya :

1. Sailormoon 


Kalo film yang satu ini emang udah pernah gw tulis di blog gw, bahkan sampai 6 sesi bro. Nah secara singkat aja ya, film ini berjudul tentang seorang gadis berusia 14 tahun bernama tsukino usagi yang bertemu dengan seekor kucing ajaib yang mampu berbicara bernama luna. Setelah pertemuan itu akhirnya dia memiliki kemampuan super untuk membasmi musuh-musuh yang ingin menghancurkan bumi. Dalam perjalanannya pun usagi tidak hanya sendiri melainkan bersama dengan para sailor soldier yang lain. Film ini dulu ditayangkan di indosiar di tahun 90'an. 

2. Kickers


Untuk film yang satu ini, gw cuma ingat kakeru sebagai tokoh utama dan juga kipernya kalo gak salah hongo yang selalu pake topi. Nah timnya hongo itu lemah banget sampai akhirnya kakeru ikut bergabung dan akhirnya menjadi tim yang cukup kuat (tetapi masih lemah juga). Film ini lebih banyak drama daripada main bolanya. Cuma kalo nonton film ini, bikin kangen aja hehehe. Jadi akhirnya gw masukin di list ini.


3. Digimon 1 & 2


Walaupun digimon sebenarnya agak banyak, tapi entah kenapa film digimon yang paling berkesan adalah digimon 1 dan 2. Dulu gw kira film digimon itu adalah pokemon, justru yang pertama kali gw tahu adalah pokemon. Eh ternyata yang terkenal adalah digimon. Jadi nih film bercerita mengenai 7 anak yang sedang menjalani liburan berkemah dan terjebak di sebuah dunia yang tidak mereka perna sangka yakni dunia digital. Disana mereka bertemu partner digimon mereka. Film ini termasuk film yang menurut gw legenda pada masanya karena dulu sempat cari cd nya (jaman dulu cd) itu susah banget, karena habis terus, padahal jaman dulu tuh cuma bisa beli cd ori, gatau beli bajakan dimana. Nah kalo digimon 2 sendiri merupakan terusan dari digimon 1 yang ternyata masalah di digimon 1 itu belum terselesaikan dengan baik sehingga muncullah 3 anak terpilih yang baru beserta 2 anak terpilih yang lama (dari digimon 1). Dan pada akhirnya semua anak terpilih dari seluruh dunia ikut bergabung untuk melindungi dunia digital dari tangan-tangan jahat.

4.  Detective Conan

Nah, kalau ini sebenarnya uda gak asing lagi, bahkan sampai sekarang komiknya belum tamat. Lo bayangin aja, dari jaman gw masih kelas 3 sd sampai sekarang udah mau lulus kuliah si conan masih kelas 1 sd juga. Emang dah nih komik. Walaupun begitu film kartun conan cukup membuat anak-anak pada masa itu nyaman di depan tv selama hari minggu. Detektif conan bercerita mengenai seorang detektif smu yang mengecil akibat diberi racun oleh lelaki berjubah hitam. Dan untuk memburu dimana kawanan pria berjubah hitam itu maka si conan harus membantu mouri, ayah dari kekasihnya untuk bisa menjadi detektif terkenal. Yah, kalau pengen tahu cerita selanjutnya ya tinggal baca aja komiknya.

5. Crush Gear Turbo


Gw rasa untuk film yang satu ini bakal banyak yang punya mainannya zaman dulu. Film ini dipercaya gabungan dari tamiya dan beyblade. Kalau dulu pada main beyblade, pasti tau betapa rusuhnya cara mainnya. Malahan pas jaman dulu gw malah main beyblade diatas wajan gara-gara gak tempat mainnya. Begitu juga tamiya, mainnnya di tempat yang ada tracknya. Nah balik ke film ini, yang gw inget cuma garuda eagle sama garuda phoenix, juga geiki. Tetapi film ini sendiri memiliki kesan terdalam, apalagi kalau lo masih punya mainannya hehe.

Sebenarnya masih agak banyak, cuma gw agak lupa. Nanti kalau gw inget bakal gw tulis lagi hehehe. Semoga bermanfaat buat nostalgia kalian nyahahaha.
 

Thursday, February 28, 2013

Tutorial AJAX : Cek Username secara Run Time

Halo, hari ini gw akan sedikit menulis mengenai tutorial ajax. Jadi ceritanya adalah bahwa beberapa waktu ini gw mendapatkan project-project kantor yang berhubungan dengan ajax. Agak rempong juga seh karena kudu belajar lagi. Tetapi, mw gimana lagi, namanya juga kerjaan, ya kudu bisa lah hehe. So, kali ini gw akan memberikan tutorial cara memeriksa username secara real time tanpa harus mengirim username ke server terlebih dahulu. Jadi lebih hemat bandwith bro hehe..

Pertama sudah pasti harus buat dulu tabelnya. Kita bikin tabel yang simpel aja, yang muat username, password dan juga id. Berikut command sql untuk membuat tabel tersebut.
CREATE TABLE IF NOT EXISTS `users` (
  `id` int(4) NOT NULL AUTO_INCREMENT,
  `username` varchar(100) NOT NULL,
  `password` varchar(100) NOT NULL,
  `priviledges_id` varchar(1) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ;
Tabel diatas hanya sekedar contoh, yang paling penting ada field usernamenya. Nah tabel diatas akan gw isi seperti ini.
INSERT INTO `users` (`id`, `username`, `password`, `priviledges_id`) VALUES
(1, 'admin', 'cdf3fb64ec8851b5d7bc8056a8d71798', '1'),
(5, 'Viking', 'b9b5169b5f936044cf1ae8c01b9b5d8e', '2'),
(6, 'Yofie', '8d2c18a13302e772f0be96288fa41ea2', '2'),
(7, 'Fauzan', '40cdf041f03172245b12ae442e0f813f', '2');

Nah setelah ini mari kita mulai masuk ke kodingnya. Berikut kodingnya...
<!DOCTYPE html>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>AJAX Username</title>
<script type="text/javascript" src="jquery-1.8.3.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $('#username').change(function(e){
            //tampilkan animasi loading saat pengecekan ke database
            $('#pesan').html("<img src='loading.gif' />checking...");
            var username = $('#username').val();
            $.ajax({
                type:"POST",
                url:"check.php",
                data:"username="+username,
                success: function(data){
                    if(data == 0){
                        $('#pesan').html("<img src='accepted.gif' /><span style='color:green;margin-left:10px;'>Username belum digunakan</span>");
                    } else {
                        $('#pesan').html("<img src='rejected.png' /><span style='color:red;margin-left:10px;'>Username sudah dipakai</span>");
                    }
                }
            });
        });
    });
</script>
</head>

<body>
    <table>
        <form>
            <tr>
                <td><label for="username">Username</label></td>
                <td>:</td>
                <td><input type="text" size="20" name="username" id="username"/></td>
                <td><span id="pesan"></span></td>
            </tr>
            <tr>
                <td><label for="password">Password</label></td>
                <td>:</td>
                <td><input type="password" size="20" name="password" id="password"/></td>
            </tr>
            <td><input type="submit" value="submit" name="submit" /></td>
        </form>
    </table>
</body>
</html>
Koding diatas merupakan koding html. Cara kerjanya adalah ketika user mengisi username maka secara otomatis akan dikirim data melalui ajax untuk menembak langsung ke database. Jadi ajaxnya akan memeriksa setiap inputan yang dimasukkan oleh user dan akan dikirim secara otomatis via ajax. Nah untuk fungsi checking sendirinya adalah sebagai berikut.
<?php
    mysql_connect("localhost", "root", ""); //connect dengan mysql
    mysql_select_db("projecte"); //ini nama database
  
    $username = $_POST['username'];
  
    $sql = mysql_query("select username from users where username='$username'");
    $find = mysql_num_rows($sql);
  
    echo $find;
?>
Nah, koding php diatas akan menangkap username yang di post via ajax dan mengecek di database. Jika terdapat data maka nilainya adalah 1 dan jika tidak ada maka nilainya 0. Demikian tutorial saya hari ini, semoga bermanfaat buat kalian semua. Salam damai dan super.

Sunday, February 17, 2013

Tutorial Regular Expression untuk Pemula

Kali ini gw akan sedikit membahas mengenai regular expression / regex. Oh ya, untuk mengetahui penjelasan regular expression silahkan baca aja disini. Jika mau berbicara lebih simple maka gw akan sedikit mengutip disini bahwa sebenarnya regular expression merupakan sebuah pola yang menyediakan cara yang ringkas dan fleksibel untuk mengidentifikasi sebuah string / teks. Dengan regex maka pola tersebut akan mencocokan dengan string yang dimasukkan apakah sudah memenuhi spesifikasi yang telah ditentukan atau belum. Nah, daripada bingung dengan penjelasan tersebut, maka langsung aja gw akan jelaskan bagaimana pola tersebut bekerja. 

Pertama kita mulai dengan tag pembuka. Tag ini merupakan tag yang menentukan bahwa string tersebut memiliki awalan dan akhiran.
/^ $/ -> Tag ini menunjukkan bahwa spesifikasi string yang kita inginkan memiliki awalan dan akhiran.
Kedua adalah menentukan character apa yang diperbolehkan di dalam string yang ingin dicek.
/^[a-z]$/ ->artinya adalah bahwa dalam string yang ingin dimasukkan hanya boleh memuat huruf kecil.
Dengan melihat pola yang gw ajarkan diatas, seharusnya lo pada udah bisa donk membuat regular expression kan? Sebagai permulaan, kita akan membuat pola untuk mengecek sebuah username. Strukturnya adalah hanya dapat diisi dengan huruf besar dan kecil, angka, underscore, dan dash. Panjang karakternya sekitar 4-16 karakter. berikut strukturnya.
/^ $/ -> Selalu mulai dengan tag awalan dan penutup.
/^[a-z]$/ -> Hanya bisa menerima huruf kecil saja.
/^[a-zA-Z]$/ -> Hanya bisa menerima huruf kecil dan besar.
/^[a-zA-Z0-9]$/ ->Hanya bisa menerima huruf kecil, besar dan angka.
/^[a-zA-Z-0-9_-]$/ ->Yapz, sekarang semua syarat penulisan sudah terpenuhi ( eh belum deng). Kita masih butuh panjang karakter, bagaimana cara penulisannya?

/^[a-zA-Z0-9_-]{4,16}$/ -> Nah coba deh pake ini, pasti manjur hehehe..
So simpel banget kan cara pakenya? Tetapi regular expression ini bisa dipake dimana aja? ya, bisa secara client side scripting dan juga server side scripting. Untuk penggunaan client side scripting begini cara pakainya.
if(!username.match(/^[a-zA-Z0-9_-]{4,16}$/)) -> username merupakan variabel yang mengambil value dari input text. artinya jika username tidak sesuai dengan pattern yang kita tentukan maka lakukan sesuatu.
Nah kalau untuk yang server side scripting begini cara pakainya.
$username = $_POST['username'];
$regex = "/^[a-zA-Z0-9_-]{4,16}$/";
if(preg_match($regex, $username)) -> artinya jika username tidak sesuai dengan pattern yang kita tentukan maka lakukan sesuatu.
So, begitulah cara pakai regex bagi pemula, gampang bukan? hehehe...

Saturday, February 16, 2013

Tentang Social Media Specialist

Selamat malam para pembaca setia blog gw hehehe. Apa kabar neh? lama tidak jumpa haha. Oke jadi hari ini gw akan sedikit bercerita mengenai social media specialist. Sebenarnya gw udah pernah cerita sih mengenai social media specialist, cuma yang itu kan cuma main-main aja hehehe. Eh gak juga sih, ada benarnya juga kok #nahloh jadi bingung sendiri kan. Oke jadi ceritanya begini neh, akhir-akhir ini gw sama temen gw sering banget neh ngomongin temen gw dan dia. Perilaku temen gw ini di social media semakin lama semakin bikin gw gemes. Gimana gak gemes coba? wong twitnya itu loh, bikin bulu kuduk merinding, pengen di unfollow tapi dia temen gw. gak enak gitu lah #blangkondetected. So, akhirnya gw memutuskan ya udahlah kita tetep follow, tapi diejek di belakang wkwkwk. 

Nah selang beberapa lama, gw sempetin deh ngomong sama temen kantor gw yang juga social media specialist. Tetapi temen kantor gw ini gak sefreak temen gw di social media terutama di twitter. Kalo pun dia ngetwit pun, dia ngetwit mengenai promosi bandnya, maklum temen kantor gw ini merupakan anak band, dan bandnya sudah cukup terkenal di daerahnya. Nah di mulailah pembicaraan mengenai social media specialist neh. Berikut pertanyaan gw ke dia. 

Sebut saja temen gw ini angga.

Gw : Oi ngga, lo sebenarnya kalo main facebook gitu ngapain seh?

Angga : yah nyari info yang berguna tentang client kita lah.
 
Gw : Oh oke, nah kalo lo main tweet deck gitu, sebenarnya lo ngapain aja seh?
 
Angga : gw ngurus akun twitter pribadi sama band gw. Emang kenapa?

Gw : oh kalo tweet deck itu bisa multiple akun gitu ya? baru tau gw hehe.. eh btw, info apaan emang yang lo dapet dari facebook?

Angga : Oke, bakal gw jelasin. Jadi sebenarnya apa yang gw lakuin itu ada laporan tertulisnya yang bakal gw kasi ke si bos. Nah salah satu yang gw teliti adalah bagaimana branding di facebook. Salah satu caranya adalah dengan iklan, biayanya cukup mahal. Namun terjamin pencapain ke si target. Nah yang kedua pake facebook pages. Ini agak riskan tergantung jumlah like di page itu sendiri. 

Gw : Oh, terus bagusan mana donk jadinya?

Angga : Jika ditanya bagusan mana, balik lagi ke biaya. Sebenarnya menurut consortium socmed di indonesia mengenai digital advertising (waduh opo iki). Akan lebih baik facebook pages, karena itu layanan free, tetapi biaya likenya cukup mahal.

Gw : Hah, maksudnya biaya like tuh apaan? bisa beli like gitu?

Angga : ya begitulah, sebenarnya asal lo punya uang, itu bukan masalah besar. Kita tinggal buat ghost account untuk mengakali itu, lalu brandingnya sendiri kita sebar melalui akun pribadi masing-masing. Tekniknya paling simpel adalah dengan melakukan share di akun fb yang memiliki jumlah teman yang banyak.

Gw : eh berarti jangan-jangan kalo ada akun fb yang punya temen banyak gitu bisa dijual donk?

Angga : ya begitulah, jadi jangan heran kalau tiba-tiba lo temenin sama si A bisa jadi beberapa hari kemudian jadi toko si A dengan menampilkan iklan perbesar pen*s dan juga mempersempit v*gina.

Gw : Bujud buneng. terus ada apalagi bro? kayaknya seru nih, btw gw punya temen nih namanya si **** (nama di sensor demi kenyamanan kita semua). Dia sebenarnya orangnya biasa aja, cuma setelah kerja jadi socmed specialist dia jadi freak gitu di twitter. Padahal dulunya gak kayak begitu. Begitu juga followernya. Itu urusannya gimana ya bro?


Angga :Oke jadi begini neh bay. Sebenarnya di twitter itu punya cara main sendiri. Menurut consortium social media specialist (nah ini bocah pasti mw kibulin gw pake consortium2 segala). Cara main di twitter itu tergantung dari jumlah follower dan juga jumlah tweet dari akunnya selama ini.

Gw : maksudnya gimana seh?

Angga : Jadi dalam melakukan promosi branding di twitter itu tekniknya ada 5 buah yakni 
1. Dari tweet yang dilakukan oleh sebuah akun. Jumlah follower sangat mempengaruhi disini. makanya jangan heran kalau temen lo yang biasa2 aja dulunya begitu jadi freak gitu karena memang begitulah pekerjaannya.
2. Dari banyaknya tweet tersebut di retweet.  Karena kekuatan promosi adalah bagaimana informasi yang disebar, dapat menyebar dengan sangat cepat dan luas.
3. Dari banyaknya tweet yang di favorite. Hanya aja yang ini tidak terlalu diperhitungkan. Biasanya yang berhubungan dengan ini adalah produk yang ditunggu oleh target customer. Contohnya kayak blackberry 10. Kalau kita buat tweet tentang tersebut, target yang ingin membeli produk tersebut akan memantau akun kita bahkan sampai memfavorite tweet kita.
4. Dari promote via twitter. Yang ini sebenarnya masih gw pelajari bagaimana cara kerjanya. cuma menurut yang udah gw pelajari selama ini biayanya sekitar 25 $ untuk 1 tweet yang di promote dengan perhitungan setiap retweetnya adalah 1 $ dan favoritenya adalah 5 $. Tetapi ini masih perkiraan ya. 
5. Hubungan dengan buzzer, celebtweet dan socmed specialist.

Gw : Eh maksud hubungan dengan buzzer, celebtweet dan socmed specialist itu apaan? lah emang kalo jadi socmed specialist jadi freak gitu ya?

Angga : Oh, jadi begini ceritanya bro.. sebagai seorang socmed specialist kita harus menargetkan produk yang ingin di promosikan itu sampai di pasar dengan baik. Nah salah satu jalannya dengan hubungan dengan buzzer dan celebtweet karena mereka memang punya pengaruh di twitter dan memungkinkan kita untuk bisa memasarkan produk kita dengan baik. Salah satu caranya adalah dengan ya ngetweet gitu. Nah temen lo itu jadi freak gitu karena emang itu pekerjaannya, dia melakukan perhitungan statistik setiap tweet yang dilakukannya.

Gw : tapi tweet temen gw ini aga freak gitu, galau2 ga jelas bin sampah gitu lah. emang sih kadang-kadang lucu cuma lebih banyak sampahnya. 

Angga : temen lo dulunya biasa aja kan?

Gw : iya, tapi jadi freak gitu sekarang. malahan sok2 kenal ama selebtweet gitu. geli gw jadinya.

Angga : Nah itu, artinya dia uda work out, artinya dia memperhatikan setiap tweet yang dikeluarin terus memperhitungkan statistiknya gitu. Kalau temen gw yang lain seh biasanya begitu, dia memperhatikan bagaimana follower tersebut merespons dan tindakan apa yang harus diambil agar bisa memasarkan produk dengan baik. Begitu pula jika berhubungan dengan celebtweet, mereka bertukar informasi 1 dengan yang lain agar dapat meraup keuntungan dengan cara survey.

Gw : Oh begitu toh, emang kalau kerja sama buzzer gitu gimana? 

Angga : Nah, simple aja. tau raditya dika kan? followernya udah 3 jutaan tuh dan akunnya pun mendapatkan verified dari si twitter. Twitnya dia pun berkisar 3-5 juta rupiah untuk buzzer, itu pun belum termasuk jumlah retweet dan favorite yang dia dapatkan dari twitnya.

Gw : waduh mantap banget berarti ya. Tetapi yang lo pantau cuma twitter sama fb aja ya?

Angga : wah, itu mah cuma sebagian kecil aja. kan masih banyak tuh akun social media yang lain. Namanya juga social media specialist, harus punya semua akun social media lah dan memantau kinerjanya.

Gw : okelah kalau begitu...

Demikian lah pembicaraan gw dengan temen gw. Dan jangan anda percaya begitu saja. #loh