Validasi Form dengan CakePHP

dokumen-dokumen yang mirip
Tutorial CakePHP Dasar Part III - Sorting, Pagination

Tutorial CakePHP Dasar Part IV - Searching

Membuat Combobox Bertingkat dengan CakePHP

Upload File dengan Metode AJAX

Koneksi Database Mysql dengan C#

Membuat Database dengan SQL Server Management Studio

AJAX dengan jquery Part 1

AJAX dengan jquery Part 3

AJAX dengan jquery Part 2

AJAX dengan jquery Part 4

Mendeteksi Browser Mobile dengan PHP

TUTORIAL CODEIGNITER Langkah Tepat menjadi Web Developer Handal, menguasai CodeIgniter, jalan membuat aplikasi berbasis website lebih mudah

Dasar-dasar HTML 2. Oleh: Cecep Yusuf

BAB III PEMBAHASAN 3.1 Analisa Sistem

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM. Implementasi website pada Perusahaan First Forex

BAB V IMPLEMENTASI DAN PENGUJIAN PROGRAM

BAB III ANALISA DAN DESAIN SISTEM

BAB IV IMPLEMENTASI DAN PENGUJIAN. web ini yang di lakukan secara online dengan webhosting. Tahapan ini dilakukan

BAB IV IMPLEMENTASI DAN PENGUJIAN

FRAMEWORK CODEIGNITER

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM. sistem dan dapat dipandang sebagai usaha untuk mewujudkan sistem yang

Menangani Input dari User

Membuat Database mysql dengan PhpMyAdmin

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV HASIL DAN PEMBAHASAN

Bab 4 Pembahasan Dan Hasil Pengujian

BERKENALAN DENGAN MODEL CODEIGNITER

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM

BAB IV IMPLEMENTASI DAN PENGUJIAN

E-trik Ajax. Database MySQL. Dedi Alnas

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM. dioperasikan. Pada tahap ini akan dijelaskan mengenai sistem yang dirancang

BAB III ANALISA DAN PERANCANGAN SISTEM

USER MANUAL E-PROCUREMENT CKB (Vendor)

BAB III ANALISA DAN PERANCANGAN

Oleh: Ahmad Syauqi Ahsan

Pemrograman PHP & MySQL

BAB III ANALISA DAN PERANCANGAN

BAB V PENGUJIAN DAN IMPLEMENTASI SISTEM. dimana sistem yang baru ini dapat dioperasikan secara menyeluruh. Implementasi

BAB III ANALISIS DAN DESAIN SISTEM

BAB V IMPLEMENTASI DAN PENGUJIAN. web, perancangan struktur data ke dalam database, pembuatan kode program dan

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM. e-learning yang akan dibangun. Tahapan ini dilakukan setelah perancangan selesai

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM. menggunakan basis data MySQL. Aplikasi PHP dapat dijalankan pada Operating

BAB IV TESTING DAN IMPLEMENTASI


BAB III ANALISIS DAN DESAIN SISTEM

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB V IMPLEMENTASI DAN PENGUJIAN. (Studi kasus Dinas Tenaga Kerja dan Transmigrasi sub Kepegawaian dan Umum) ada

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

Persiapan Table Untuk Latihan Sebelum kita berkenalan lebih jauh dengan Trigger, mari kita buat terlebih dahulu, struktur table yang dibutuhkan.

Pemrograman Web Berbasis Framework. Pertemuan 7 : Keamanan Aplikasi. Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

Hak Akses dan Login Multi User. Baiklah untuk mulai praktek yang pertama ini file yang dibutuhkan adalah seperti yang terlihat dalam gambar berikut :

BAB IV IMPLEMENTASI DAN EVALUASI SISTEM. disesuaikan dengan desain sistem yang sudah dibuat. Rancang Bangun sistem

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN SISTEM


BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISA DAN PERANCANGAN

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

BAB IV IMPLEMENTASI DAN PENGUJIAN

Langkah-langkah pembuatan website dengan Instalasi secara online

BAB IV IMPLEMENTASI DAN PENGUJIAN


BAB III ANALISA DAN PERANCANGAN

Pengenalan JavaScript

TUTORIAL CODEIGNITER Langkah Tepat menjadi Web Developer Handal, menguasai CodeIgniter, jalan membuat aplikasi berbasis website lebih mudah

Oleh: Ahmad Syauqi Ahsan

Gambar 6.1 Tampilan Utama Website

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM. implementasi, serta pengujian yang digunakan dalam mengimplementasikan program

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISA DAN PERANCANGAN SISTEM. permasalahan yang ada sebagai dasar untuk membuat sebuah solusi yang

BAB III ANALISIS DAN DESAIN SISTEM

Membuat CRUD Sederhana pada Framework Laravel

BAB 4 IMPLEMENTASI DAN PENGUJIAN. Bab ini merupakan tahap penerjemahan kebutuhan pembangunan

Sering kita mendengar tentang MVC Framework PHP tetapi kurang mengerti belum arti dari

BAB III ANALISIS DAN DESAIN SISTEM

Generated by Foxit PDF Creator Foxit Software For evaluation only. Lampiran 1: Use Case Narrative

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM. sudah ditentukan. Tujuan implementasi adalah untuk mengkonfirmasi modul program

BAB V PENGUJIAN DAN IMPLEMENTASI SISTEM. perangkat lunak. Pengujian dilakukan untuk menjamin kualitas dan juga

BAB III ANALISIS DAN DESAIN SISTEM

SIMULASI ONLINE WEBSITE TRYOUT.GUNADARMA.AC.ID

TUTORIAL PHP MYSQL Langkah Tepat menjadi Web Developer Handal, menguasai PHP dan MySQL, jalan terbaik membuat website dan aplikasi berbasis web

Membuat sendiri active record sederhana ala framework

BAB III ANALISA DAN DESAIN SISTEM

Tutorial DOM Templating Menggunakan Mustache.js

Script PHP dan MySQL J A M K E E M P A T

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM. Tahap implementasi adalah tahapan penerapan sistem untuk dapat

Bab 4 Hasil dan Pembahasan

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM


Bab 4. Pembahasan dan Hasil

MODUL PEMROGRAMAN WEB

Gambar 3.1 Data Flow Diagram Level 0

BAB III ANALISA DAN PERANCANGAN

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM. implementasi sistem. Implementasi sistem akan mengubah bentuk dari analisis

PHP dan Framework CodeIgniter

BAB III ANALISA DAN PERANCANGAN SISTEM

BAB III ANALISA DAN PERANCANGAN

Transkripsi:

Validasi Form dengan CakePHP Oleh: Cecep Yusuf Di sini akan dipelajari bagaimana cara membuat validasi server pada model untuk form dengan menggunakan framework CakePHP. Hmm.. Sudah lama juga saya tidak membuat tutorial di website tercinta ini. Tetapi walopun saya tidak membuat tutorial, saya senang karena semakin ke sini ternyata semakin banyak visitor jagocoding.com ini. Visitor tidak hanya sekedar pembaca, anggotanya pun semakin ke sini semakin ke sana. Tetapi sayangnya masih banyak yang belum ingin menjadi anggota di forum ini cuma karena daftarnya harus ada verifikasi e-mail. Padahal, banyak banget manfaatnya kalo sudah daftar di situs ini, mulai dari bisa diskusi dan berkenalan dengan para "jago coding". Silakan dibaca di sini. Oke, tutorial kali ini adalah kita akan membuat validasi form dengan menggunakan CakePHP. Untuk contoh kasusnya, kita akan membuat sebuah form registrasi yang mana mengharuskan pengguna untuk mengisi seluruh form yang harus diisi/required, validasi e-mail, url, dan password yang harus sama dengan input 'confirm password', termasuk minimal dan maksimal huruf yang dimasukkan. Sebelum membuat validasi, ada baiknya temen2 mempelajari tutorial dasar CakePHP yang ada di sini: http://jagocoding.com/tag/tutorial-dasar Langkah pertama yang harus dilakukan adalah membuat table untuk database yang akan digunakan. Diasumsikan di sini bahwa temen2 sudah mengkonfigurasi CakePHP dengan benar, jadi saya tidak akan menjelaskan terlalu banyak mengenai setting awal pada CakePHP. Untuk membuat table, silakan copy syntax mysql di bawah ini, kemudian execute di mysql temen2: CREATE TABLE IF NOT EXISTS `pengguna` ( `id` int(11) NOT NULL AUTO_INCREMENT, `nama_lengkap` varchar(125) NOT NULL, `alamat` text NOT NULL, `email` varchar(125) NOT NULL, `website` varchar(125) NOT NULL, `username` varchar(125) NOT NULL, `password` varchar(125) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

Setelah itu, untuk memudahkan proses selanjutnya, kita akan menentukan rule-rule untuk setiap validasi field yang akan kita gunakan sebelum ke tahap programming. field Nama Lengkap harus diisi, tidak boleh kosong, dan minimal 2 huruf field Alamat harus diisi, tidak boleh kosong field E-Mail harus diisi, dan format yang diinputkan harus sesuai dengan format e-mail yang benar field Website tidak wajib diisi, tetapi harus sesuai dengan format URL yang benar field Username dan password harus diisi, dan minimal 5 huruf, dan maksimal 20 huruf, mengandung huruf dan angka Setelah kita menentukan rule-rulenya, maka tahap selanjutnya adalah membuat model pada CakePHP untuk tabel pengguna. Yuk kita buat modelnya di /app/model/ dengan nama file Pengguna.php, dengan isi filenya adalah sebagai berikut: <?php class Pengguna extends AppModel { public $usetable = 'pengguna'; Mengapa ada inisialisasi $usetable? karena kita membuat tabel menggunakan bahasa Indonesia dengan mengabaikan aturan plural. Jika kita membuat table dengan nama users (memakai 's' maka jika kita membuat model bernama User, kita tidak usah menambahkan variable $usetable. CakePHP secara otomatis akan mendeteksi nama table sesuai dengan nama model dengan menambahkan 's' atau 'es' (aturan pluralisme bahasa inggris). Sekarang, kita akan menambahkan validasi dengan rule-rule seperti yang kita tulis di atas. Membuat validasi pada framework Cakephp yaitu dituliskan DI MODELnya... Tambahkan kode-kode berikut di dalam class Pengguna.php (model Pengguna): public $validate = array( 'nama_lengkap' => array( 'rule' => array('minlength', '2' //minimal 2 huruf //tidak boleh kosong, required 'message' => 'Mohon masukkan minimal 2 huruf' 'alamat' => array( 'rule' => 'notempty', //tidak boleh kosong 'message' => 'Alamat tidak boleh kosong' 'email' => array( 'rule' => 'email', //harus format e-mail 'message' => 'Format e-mail harus benar' 'website' => array( 'rule' => 'url', //harus format url 'message' => 'Format URL harus benar'

); 'username' => array( 'alphanumeric' => array( 'rule' => 'alphanumeric', //harus format e-mail 'message' => 'Username harus huruf dan angka' 'between' => array( 'rule' => array('between', 5, 20 'message' => 'Username minimal 5 dan maksimal 20 karakter' ) 'password' => array( 'alphanumeric' => array( 'rule' => 'alphanumeric', //harus format e-mail 'message' => 'Password harus huruf dan angka' 'between' => array( 'rule' => array('between', 5, 20 'message' => 'Password minimal 5 dan maksimal 20 karakter' ) Jadi, kode secara lengkapnya untuk model adalah: <?php class Pengguna extends AppModel { public $usetable = 'pengguna'; public $validate = array( 'nama_lengkap' => array( 'rule' => array('minlength', '2' //minimal 2 huruf //tidak boleh kosong, required 'message' => 'Mohon masukkan minimal 2 huruf' 'alamat' => array( 'rule' => 'notempty', //tidak boleh kosong 'message' => 'Alamat tidak boleh kosong' 'email' => array( 'rule' => 'email', //harus format e-mail 'message' => 'Format e-mail harus benar' 'website' => array( 'rule' => 'url', //harus format url 'message' => 'Format URL harus benar'

); 'username' => array( 'alphanumeric' => array( 'rule' => 'alphanumeric', //harus format e-mail 'message' => 'Username harus huruf dan angka' 'between' => array( 'rule' => array('between', 5, 20 'message' => 'Username minimal 5 dan maksimal 20 karakter' ) 'password' => array( 'alphanumeric' => array( 'rule' => 'alphanumeric', //harus format e-mail 'message' => 'Password harus huruf dan angka' 'between' => array( 'rule' => array('between', 5, 20 'message' => 'Password minimal 5 dan maksimal 20 karakter' ) Buatlah controller di folder /app/controller dengan nama PenggunaController.php: <?php class MemberController extends AppController { public $uses = array('pengguna'); public function register() { if (!empty($this->request->data)) { if ($this->pengguna->save($this->request->data)) { $this->session->setflash('data berhasil disimpan'); $this->redirect('/'); Akan saya jelaskan kode di atas.

Kita menggunakan variable $uses untuk 'meload' model yang bernama Pengguna yang sudah kita buat sebelumnya. Kode ini wajib ditulis untuk menginisialisasikan program supaya dapat menjalankan model Pengguna. Di dalam function register kita mengecek terlebih dahulu (!empty) apakah data form sudah dikirim? ($this->request->data). Jika sudah, maka simpan data ke dalam model pengguna (save) dan tampilkan laporan "Data berhasil disimpan" dan redirect ke homepage. Kemudian buatlah folder baru untuk view pada folder /app/view/ dengan nama Member/, dilanjutkan dengan membuat sebuah file bernama register.ctp (sesuai dengan nama controller Member dan nama function register()). Isi dari file register.ctp adalah: <h2>registrasi</h2> <?php echo $this->form->create('pengguna'); echo $this->form->input('nama_lengkap'); echo $this->form->input('alamat'); echo $this->form->input('email'); echo $this->form->input('website'); echo $this->form->input('username'); echo $this->form->input('password'); echo $this->form->submit('daftar'); echo $this->form->end();?> Tutorial selesai, temen2 dapat mencobanya dengan membuka URL http://localhost/nama_aplikasi/member/register. Silakan isikan secara salah, maka akan muncul pesan kesalahan di setiap field seperti screenshot di bawah ini.

Dan jika data yang kita masukkan benar (valid maka akan diteruskan untuk disimpan ke dalam database. Selamat mencoba :) Stand By With Me,

cheyuz@jagocoding.com Tentang Penulis Cecep Yusuf Hi, my name is Cecep Yusuf. However, in the virtual world I am more likely to use the name Cheyuz, which is an abbreviation of two words "Cecep" and "Yusuf". I am founder of Jagocoding.com, u can view more of me in Cheyuz.com