Susanti's Weblog

another way to speak louder

Archive for the month “July, 2012”

file .htaccess

File .htaccess merupakan file teks biasa, cara membuatnya gunakan text editor seperti winsyntax atau notepad++. Walaupun .htaccess hanyalah sebuah file, tapi .htaccess dapat merubah setting yang ada di server dan mengijinkan anda untuk melakukan banyak hal yang berbeda, sebagai contoh adalah dengan menggunakan .htaccess anda dapat membuat halaman 404 anda sendiri. .htaccess tidaklah sulit untuk di gunakan karena hanya perlu menaruh beberapa instruksi yang mudah dalam sebuah text file yang kemudian di simpan dengan nama .htaccess .

 

Berikut beberapa fungsi dari .htaccess

  • Mem-proteksi Folder / Melindungi Folder dengan password
  • Mengalihkan pengunjung website anda dengan otomatis
  • Membuat halaman pesan tampilan error anda sendiri
  • Menolak pengunjung dengan IP Address tertentu
  • Merubah extensi file anda
  • Hanya mengijinkan pengunjung dengan IP Address tertentu
  • Mengijinkan/Menolak list direktori

Ketik pada text editor anda kode berikut:

RewriteEngine On

RewriteBase /situsberita/

RewriteRule ^berita([0-9]+)-(.*)\.html$ selengkapnya.php?id=$1

lalu simpan dengan nama .htaccess, pada contoh di atas saya menyimpan file .htaccess di folder situsberita yang berada di document root anda.

Jadi pada contoh berikut kita akan membuat situs berita, di mana file file situs berita kita taruh di folder yang kita beri nama situs berita, sehingga kalau anda buka di browser urlny adalah: http://localhost/situsberita

Keterangan kode:

  • RewriteEngine On, Mengaktifkan RewriteEngine
  • RewriteBase /situsberita/, karena kita menaruh file .htaccess di folder situsberita dan url yang akan di-rewrite adalah http://localhost/situsberita/
    Jika anda ingin me-rewrite http://localhost/ makan kodenya RewriteBase /
  • RewriteRule, berguna untuk mecari pola url dan jika ketemu akan mereplacenya dengan url yang kita inginkan.
    Sintaks:
    RewriteRule pola_URL <spasi> URL_pengganti
  • pola_URL, menggunakan regex
  • ^berita([0-9]+)-(.*)\.html$, artinya cari pola url yang diawali tulisan berita, kemudian ada angka kemudian diikuti strip tengah (-) kemudian ada karakter atau tulisan apapun, diakhiri dengan .html
    akan cocok dengan berita12-bla-blabla.html, berita233-terserah-tulisan-apa-disini.html, dan lainnya
Meta Karakter Definisi Contoh
^ Pencocokan di awal string ^hai akan cocok dengan haiii, haiapakabar
$ Pencocokan di akhir string tes$ akan cocok dengan pantes, kates
. Cocok dengan satu karakter apapun  
* Berjumlah 0 atau lebih  
+ Berjumlah 1 atau lebih  
( ) Pengelompokkan pola  
[ ] Pendefinisian kelas karakter [0-9] akan cocok dengan angka
[a-z] akan cocok dengan huruf kecil
[^a-z] bukan huruf kecil
\ Escaping karakter, berguna bila ingin mencocokkan karakter, tetapi karakter tersebut merupakan anggota meta karakter Ingin mencocokkan titik, maka kode regexnya adala \.
  • (silahkan pelajari tentang regular expression)
  • selengkapnya.php?id=$1, adalah url pengganti jika ditemukan pola di atas. $1 adalah pola yang cocok yang ditemukan dalam pengelompokan pola. Pengelompokan pola ada pola yang berada di antara ( dan )
    Pada pola regex di atas:
    $1 adalah ([0-9]+)
    $2 adalah (.*)

 

Pengenalan CodeIgniter

Framework secara sederhana dapat diartikan kumpulan dari fungsi-fungsi/prosedur-prosedur dan class-class untuk tujuan tertentu yang sudah siap digunakan sehingga bisa lebih mempermudah dan mempercepat pekerjaan seorang pemrograman, tanpa harus membuat fungsi atau class dari awal.

Ada beberapa alasan mengapa menggunakan Framework:

  • Mempercepat dan mempermudah pembangunan sebuah aplikasi web.
  • Relatif memudahkan dalam proses maintenance karena sudah ada pola tertentu dalam sebuah framework (dengan syarat programmer mengikuti pola standar yang ada)
  • Umumnya framework menyediakan fasilitas-fasilitas yang umum dipakai sehingga kita tidak perlu membangun dari awal (misalnya validasi, ORM, pagination, multiple database, scaffolding, pengaturan session, error handling, dll
  • Lebih bebas dalam pengembangan jika dibandingkan CMS

CodeIgniter adalah salah satu dari sekian banyak framework PHP yang tersedia secara gratis. Codeigniter adalah salah satu framework handal berbasis PHP. Selain itu, kesederhanaan dan kerampingannya membuat Codeigniter menjadi framework yang paling mudah dipelajari dan tercepat aksesnya dibandingkan framework lainnya. Pengembang CodeIgniter adalah seorang musisi rock-n-roll bernama Rick Ellis dari EllisLab (http://www.ellislab.com). Tujuan dari pembuatan framework CodeIgniter ini menurut user manualnya adalah untuk menghasilkan framework yang akan dapat digunakan untuk pengembangan proyek pembuatan website secara lebih cepat dibandingkan dengan pembuatan website dengan cara koding secara manual, dengan menyediakan banyak sekali pustaka (library) yang dibutuhkan dalam pembuatan website, dengan antarmuka yang sederhana dan struktur logika untuk mengakses pustaka yang dibutuhkan. CodeIgniter dirilis pertama kali pada 28 Februari 2006. Versi terakhir adalah 1.7.2 dapat dilihat di website resminya (ada dibagian akhir tulisan ini).

CodeIgniter memudahkan kita merancang sebuah aplikasi berbasis website. Tools ini dapat meminimalkan penulisan script yang sering kita lakukan secara manual, karena dilengkapi library yang cukup lengkap untuk keperluan pembuatan website. Dengan demikian, kita sebagai pengembang dapat lebih memfokuskan perhatian pada sisi perencanaan. Karena proses pembuatan website secara teknis sudah diminimalkan dalam hal penulisan kodenya. Lalu kenapa harus CodeIgniter.

Beberapa Kelebihan CodeIgniter

Seperti kita ketahui bahwa tersedia banyak sekali framework php yang bisa kita gunakan untuk keperluan pembuatan website. Banyak juga tersedia content managemant system yang mudah digunakan. Apa yang membuat CodeIgniter layak untuk dipilih? Berikut kelebihan-kelebihan CodeIgniter dibanding dengan tools-tools yang lain. Mungkin agak subjektif, mengingat keterbatasan pengetahuan saya. Here we go…:

1. Free of Charge – Gratis

Lisensi CodeIgniter adalah lisensi Apache/BSD style open source license, yang berarti kita dapat menggunakannya secara gratis sesuai kebutuhan kita.

2. Kompatibel dengan PHP 4.0 maupun PHP 5.0

PHP sekarang sudah memasuki release versi ke 5. Sedangka banyak webhosting ataupun developer web yang mengembangkan aplikasinya menggunakan PHP 4.0. Disinilah keunggulan CodeIgniter yang mampu mensupport pengembang yang masih menggunakan PHP versi 4.0. Namun juga tetap powerful walau digunakan bersama PHP 5.0.

3. Lighweight – Ringan dan cepat.

Secara default, saat CodeIgniter berjalan hanya akan me-load beberapa library saja. Untuk library-library lain bisa di load sesuai kebutuhan. Hal ini berarti penggunaan resource yang sedikit sehingga aplikasi akan terasa ringan dan cepat.

4. Prinsip Model-View-Controller.

Kita bebas berekspresi dalam style kita. Tapi bagaimanapun, CodeIgniter mendukung pengembangan web dengan metode Model View Controller (MVC). Sebagai penjelasan, MVC memisahkan bagian bussiness logic (logika program) dan tampilan (view) dalam sebuah aplikasi. Hal ini sangat memudahkan tim dalam proses maintenance sebuah aplikasi, karena tugas bisa lebih mudah dibagi-bagi. Ada bagian yang khusus membuat tampilan dan bagian yang membuat core programnya.

Model View Controller merupakan suatu konsep yang cukup populer dalam pembangunan aplikasi web, berawal pada bahasa pemrograman Small Talk, MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data, user interface, dan bagian yang menjadi kontrol aplikasi. Terdapat 3 jenis komponen yang membangun suatu MVC pattern dalam suatu aplikasi yaitu :

  1. View, merupakan bagian yang menangani presentation logic. Pada suatu aplikasi web bagian ini biasanya berupa file template HTML, yang diatur oleh controller. View berfungsi untuk menerima dan merepresentasikan data kepada user. Bagian ini tidak memiliki akses langsung terhadap bagian model.
  2. Model, biasanya berhubungan langsung dengan database untuk memanipulasi data (insert, update, delete, search), menangani validasi dari bagian controller, namun tidak dapat berhubungan langsung dengan bagian view.
  3. Controller, merupakan bagian yang mengatur hubungan antara bagian model dan bagian view, controller berfungsi untuk menerima request dan data dari user kemudian menentukan apa yang akan diproses oleh aplikasi.

Dengan menggunakan prinsip MVC suatu aplikasi dapat dikembangkan sesuai dengan kemampuan developernya, yaitu programmer yang menangani bagian model dan controller, sedangkan designer yang menangani bagian view, sehingga penggunaan arsitektur MVC dapat meningkatkan maintanability dan organisasi kode. Walaupun demikian dibutuhkan komunikasi yang baik antara programmer dan designer dalam menangani variabel-variabel yang akan ditampilkan.

5. Dokumentasi yang Lengkap.

Salah satu hal yang bisa dijadikan barometer apakah sebuah aplikasi benar-benar dikembangkan atau tidak bisa dilihat dari dokumentasinya. Dalam hal ini CodeIgniter sangat luar biasa, terdapat dokumentasi yang sangat lengkap tentang semua hal yang ada dalam CodeIgniter. Mulai dari langkah instalasi sampai dokumentasi fungsi-fungsi nya tersedia. Adanya dokumentasi sangat memudahkan bagi pemula dalam mempelajari lingkungan pengembangan website dengan CodeIgniter.

6. Pustaka yang lengkap.

CodeIgniter dilengkapi dengan berbagai pustaka siap pakai untuk berbagai kebutuhan, misalnya saja koneksi database, email, session dan cookies, keamanan, manipulasi gambar dan banyak lagi.

7. Banyak komunitas

Dengan banyaknya komunitas CI ini, memudahkan kita untuk berinteraksi dengan yang lain, baik itu bertanya atau teknologi terbaru.

8. Konfigurasi yang sangat minim

(Nearly zero configuration)  : tentu saja untuk menyesuaikan dengan database dan keleluasaan routing tetap diizinkan melakukan konfigurasi dengan mengubah beberapa file konfigurasi seperti database.php atau autoload.php, namun untuk menggunakan codeigniter dengan setting standard, anda hanya perlu merubah sedikit saja file pada folder config.

Fitur-Fitur CodeIgniter

Berikut fitur-fitur yang didukung oleh CodeIgniter :

  1. Sistem berbasis Model View Controller
  2. Kompatibel dengan PHP versi 4.
  3. Ringan dan Cepat.
  4. Terdapat dukungan untuk berbagai basis data.
  5. Mendukung Active Record Database.
  6. Mendukung form dan validasi data masukan.
  7. Keamanan dan XSS filtering.
  8. Tersedia pengaturan session.
  9. Tersedia class untuk mengirim email.
  10. Tersedia class untuk manipulasi gambar (cropping,resizing, rotate dan lain-lain).
  11. Tersedia class untuk upload file.
  12. Tersedia class yang mendukung transfer via FTP.
  13. Mendukung lokalisasi bahasa.
  14. Tersedia class untuk melakukan pagination (membuat tampilan perhalaman).
  15. Mendukung enkripsi data.
  16. Mendukung benchmarking.
  17. Mendukung caching.
  18. Pencatatan error yang terjadi.
  19. Tersedia class untuk membuat calendar.
  20. Tersedia class untuk mengetahui user agent, misalnya tipe browser dan sistem operasi yang digunakan pengunjung.
  21. Tersedia class untuk pembuatan template website.
  22. Tersedia class untuk membuat trackback.
  23. Tersedia pustaka untuk bekerja dengan XMP-RPC.
  24. Menghasilkan clean URL.
  25. URI routing yang felksibel.
  26. Mendukung hooks, ekstensi class dan plugin.
  27. Memiliki helper yang sangat banyak jumlahnya.

PHP introduction

PHP (Personal Home Page Tools) adalah bahasa scripting (pemograman) yang digunakan secara luas untuk penanganan, pembuatan dan pengembangan sebuah web dan bisa digunakan pada HTML. Sebagian besar perintahnya berasal dari bahasa C, Java danPerl dengan beberapa tambahan fungsi khusus PHP.  Salah satu kelebihan utama PHP dibandingkan bahasa pemograman web lainnya adalah mempermudah aplikasi melakukan koneksi dengan database. Read more…

Blender…. first meeting

Blender. Pasti mikirnya pada blender buat nge juice atau apalah itu. Tapi kali ini blender yang saya maksud adalah sebuah aplikasi untuk mebuat modeling tigas dimensi.

Pertama kali menyentuh aplikasi ini benar-benar blank dan tidak punya gambaran sama sekali tentang bagaimana menjalankan aplikasi ini. bahkan satu fungsi pun saya tidak ketahui. lalu hari itu kebetulan saya harus pindah tempat duduk dikarenakan satu dan lain hal, saya pun pindah tepat disebelah seorang master belnder, Mas Wildan.ini seperti tuhan menjawab do’a saya. Saya pun berguru dengan nya. Mulai dari fungsi-fungsi tombolb sampai dengan membuat modeling meja sederhana. Read more…

Rupiah hasil keringat sendiri

Menghabiskan uang?? Terlalu mudah bagi setiap orang. tapi bagaimana dengan meghasilkan setiap rupiah yang kita keluarkan sungguh tidak mudah. Dulu saat masih kecil sungguh sangat mudah untuk meminta uang. Tinggal merengek dan dapat. Tapi dulu belum terpikir bagaimana menghasilkan rupiah itu sendiri. Betapa mereka bersusah payah demi rupiah, demi hidup yang layak. Saat mulai beranjak dewasa pelan-pelan mulai terpikir bagaimana susahnya mencari uang. Read more…

Java attack at first day on SEAMOLEC

Salah ketika saya berpikir, pertama kuliah itu Cuma diisi dengan hal-hal menyenangkan yang sedikit tidak penting seperti basa-basi yang biasa dilakukan setiap orang ketika memulai kuliah pada hari pertama. Java in first day is out of my mind. Java? Yes Java. Sebuah bahasa pemrograman yang sangat sulit saya mengerti selama ini. bahasa pemrograman ini tidak asing karena selama kuliah D3 TKJ UNSRI sudah diperkenalkan dengan bahasa pemrograman itu. Tapi ilmu yang hanya sedikit-sedikit membuat isi kepala mengenai java pun sedikit. Sedikit lupa ingatan tentang java. Tapi disini saya ingin mencoba sedikit me review apa itu java serta berbagi sedikit ilmu mengenai kelebihan java.

Read more…

Awal kisah, from home to outbound till being an entrepreneur

Perjalanan sedikit gila Palembang-Bandung-Tangerang

Kata orang “tuntutlah ilmu sampai negeri cina”, tapi perjalanan saya kali ini tidak sepanjang itu untuk menuntut ilmu :), tidak sampai ke negeri cina. Kali ini masih daerah jawa juga 🙂

Lulus tes program alih jenjang D4 ITB-Seamolec  membuat harus pergi berlayar untuk mengikuti jadwal yang ada. Menuju bandung untuk registrasi dan kemudian tangerang untuk outbound lalu matrikulasi.

Read more…

Post Navigation