CodeIgniter menyediakan form validation yang luas dan kelas persiapan data yang membantu meminimalkan code yang kita tulis. (Form Validation merupakan suatu kelas/library)
$this->load->library('form_validation');
Skenario ideal bagi sebuah validasi ketika user login sbb:
1. Form muncul.
2. User memasukkan data dan mengirimnya.
3. Jika yang dikirim data tidak valis, form akan memunculkan data tadi kembali dan memberikan pesan error dan mendescribsikan error tersebut .
4. Proses ini terus berulang sampai user memasukkan data yang benar.
Sehingga, pada script harus mencakup:
1. Memeriksa data.
2. Mem-verifikasi data apakah tipe data nya sudah benar dan memberikan kriteria data yang benar. Contohnya tentang panjangnya karakter yang dimasukkan.
3. Membersihkan data dari pengamanan.
4. Mengatur format tipe data terlebih dahulu jika perlu.
5. Menyimpan data pada database.
Dalam mengimplementasikan form validation saya membutuhkan 3 hal:
1. Sebuah view yang berisi form.
2. Sebuah view yang berisi ‘pesan berhasil’ untuk ditampilkan jika user berhasil login.
3. Sebuah function pada controller untuk menerima dan memproses data yang masuk.
Contoh Project :
Buat form.php pada Controller:
<?php
class form extends CI_Controller{
function index(){
$this->load->helper(array('form', 'url'));
$this->load->library('form_validation');
$this->form_validation->set_rules('username', 'name', 'callback_username_check');
$this->form_validation->set_rules('password', 'Password', 'required');
$this->form_validation->set_rules('passconf', 'Password Confirmation', 'required');
$this->form_validation->set_rules('email', 'Email', 'required');
if ($this->form_validation->run()==FALSE){
$this->load->view('myform');
}
else {
$this->load->view('formsuccess');
}
}
public function username_check($str)
{
if ($str == 'test')
{
$this->form_validation->set_message('username_check', 'The %s field can not be the word "test"');
return FALSE;
}
else
{
return TRUE;
}
}
}
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
?>
Buat Myform.php pada View
<html>
<head>
<title>My Form</title>
</head>
<body>
<?php echo form_open('form'); ?>
<? echo validation_errors();?>
<h5>Username</h5>
<input type="text" name="username" value="" size="50"/>
<h5>Password</h5>
<input type="text" name="password" value="" size="50"/>
<h5>Password Confirm</h5>
<input type="text" name="passconf" value="" size="50"/>
<h5>Email Address</h5>
<input type="text" name="email" value="" size="50"/>
<div><input type="submit" value="Submit"/></div>
</body>
</html>
Dan formsuccess.php pada view
<html>
<head>
<title>My Form</title>
</head>
<body>
<h3>Your form was successfully submitted!</h3>
<p><? echo anchor('form','try it again');?></p>
</body>
</html>
Penjelasan
Untuk lebih jelas lihat pada project:
Pada view:
<?php echo form_open('form'); ?>
Tentang Form Open dan kawan-kawannya - lihat, Secuil Form-Helper CodeIgniter
Kode pada controller/form.php
$this->load->helper(array('form', 'url'));
Black Note:
Gampangnya jika kita tak menggunakan helper ini, setelah kita klik tombol submit untuk validasi, form tidak mau load ulang (halaman baru), jadi ya yang tadi kita pakai yang terus ditampilkan…
Lagi, jangan lupa catet kode ini setiap kita akan menggunakan form helper.
Selanjutnya,
<? echo validation_errors();?>
Setting Validation Rules
CodeIgniter memungkinkan kita untuk men-set banyak validasi untuk satu field, dan diproses dalam satu waktu.
Nah, Set Validasi ini bernama, set_rules() function.
Function ini memiliki 3 variabel:
$this->form_validation->set_rules('username', 'name', 'required|min_length[5]|max_length[12]|is_unique[users.username]');
1. Field Name : nama field yang akan diberikan pada form field.
2. Nama yang akan ditampilkan pada error message.
3. Validation Rules. (yang sukses maupun tidak)
Set pada Controller/form.php/
$this->form_validation->set_rules('username', 'name', 'required|min_length[5]|max_length[12]|is_unique[users.username]');
$this->form_validation->set_rules('password', 'Password', 'required');
$this->form_validation->set_rules('passconf', 'Password Confirmation', 'required');
$this->form_validation->set_rules('email', 'Email', 'required');Tampilan:
CallBacks!!! : Your own Validation Functions
Sistem Validasi mendukung callbacks untuk fungsi validasi ala kita-kita.. :-D Yah, jadi bisa di-custom-custom gitu lah.
Pada set_rules controller/form.php jika diubah :
$this->form_validation->set_rules('username', 'Username',
'
callback_username_check'
);
Sedangkan untuk function-nya:
public function username_check($str)
{
if ($str == 'test')
{
$this->form_validation->set_message('username_check', 'The %s field can not be the word "test"');
return FALSE;
}
else
{
return TRUE;
}
}
Sehingga jika kita ketikkan test pada username, akan muncul message: 'The %s field can not be the word "test"'
Untuk function:
if ($this->form_validation->run()==FALSE){
$this->load->view('myform');
}
else {
$this->load->view('formsuccess');
}
}
Kita arahkan, jika validasi tadi bernilai FALSE, myform.php akan di-load kembali.
Jika TRUE diarahkan ke formsuccess.php.
Referensi:
Artikel:
syip....
Tinggal grab saja nih
semua isinya tentang hal - hal Penting, Panas, Perlu dan Seruu - klik di sini
anekahosting.com web hosting murah terbaik di indonesia hingga saat ini masih membayar member nya - Klik disini
untuk form pemesanan toko tas milik saya tas branded murah
erimakasih banyak tangkai informasinya, semoga bermanfaat jatah pembaca. sentosa sehat! cara mengobati penyakit usus buntu
Untuk merubah pesan error nya gimana gan?
Default nya berbahasa inggris.
Thank's from Chimikofu
Kami berterimakasih atas infonya sukses selalu
Selaput Dara Buatan
Vimax asli Canada
Obat Perangsang
viagra usa
Web Hosting Murah dan Berkualitas Asli indonesia Sanggarhost.com
Tempat Kursus Website, SEO, Desain Grafis Favorit 2015 di Jakarta
Pakar SEO
Tempat Download Software dan Game Gratis
Tempat Download Software dan Game Gratis
Thefurion.com
INJEKAN88 Tempat Download Software dan Games Terbaru
thanks I was impressed with your blog full of useful information thank you once again very helpful to me
Jam Dinding Karakter
trimakasih.
informasi yang sangat menarik bagi kita
salam sukses
bio hair obat penumbuh rambut
selaput dara
vimax canada original
Thanks for sharing nice blog and article.
Obat Pembesar Penis
Selaput Dara Buatan Japan
Obat Penumbuh Rambut
Alat Pembesar Penis
Obat Penumbuh Rambut
Vibrator Thorn Dragon
pemutih kulit
Obat Pemutih Gigi
Obat Penghilang Selulit
Obat Penyubur Seperma
Obat Pelangsing Badan
Obat Pembesar Penis U.S.A
Obat Penambah Stamina
Alat Pembesar Penis
Obat Bantu Sex Wanita
Vagina Bulu getar Goyang
Obat Penumbuh Rambut
POKERWALET.COM AGEN POKER ONLINE DAN CAPSA ONLINE TERBAIK TERPERCAYA DI INDONESIA
POKERWALET.COM AGEN POKER ONLINE DAN CAPSA ONLINE TERBAIK TERPERCAYA DI INDONESIA
POKERWALET.COM AGEN POKER ONLINE DAN CAPSA ONLINE TERBAIK TERPERCAYA DI INDONESIA
Permisi promo ya min ^-^
Gabung sekarang di Situs Poker Online Uang Asli dan raihlah bonus yang disediakan seperti Bonus Member Baru 20% serta Bonus Referral 10% seumur hidup. Pendaftaran GRATIS!
Tersedia permainan seperti :
- Texas Poker
- Bandar Ceme
- Dominoqq
- BlackJack
- Capsa Susun
- Ceme
Situs Poker Terpercaya
Agen Judi Poker Online
Poker Online
Judi Poker Online
Agen Poker Terpercaya
Google Chrome 2020
Google Chrome 2020 APK
Google Chrome 2020 Offline Installers
Google Chrome Portable 2020
Google Chrome 2020 Latest Version
Google Chrome 2020 for Windows 10
Google Chrome 2020 for Windows 8
Google Chrome 2020 for Windows 7
Google Chrome 2020 for Windows 64 bit
Google Chrome 2020 for Windows 32 bit
Google Chrome 2020 free Download
Hai terimakasih untuk blog Anda, sangat menyenangkan kunjungi kembali situs saya di https://bit.ly/3s1JaDX and https://pencetterus.online/ and https://linktr.ee/ezslot99
segera daftarkan diri kalian di bonanza 138 dan dapatkan promo promo menarik lainnya.