ribbon iwa

Membuat Form Validasi Menggunakan CodeIgniter

Selamat pagi, bagaimana kabar anda baik bukan! kali ini kami akan share bagaimana membuat form validasi menggunakan CodeIgniter.

Form validasi ini ditujukan kepada user kemudian user mengisinya, kemudian mengirimkannya dengan menekan button submit, Form validasi kemudian akan memeriksa pada setiap formulir sesuai dengan aturan yang telah di tentukan oleh pengembang. Langsung saja mari kita mulai dari awal.

Load Assets

Kita perlu memuat satu pustaka untuk validasi form: Pustaka Validasi Formulir. kalian bisa melakukan ini dalam satu baris.
 $this->load->library('formvalidation'); 

Menetapkan aturan

Langkah selanjutnya dalam menggunakan Form Validation Library adalah mengatur aturan untuk form. Aturan-aturan ini ditetapkan dan harus dipatuhi. Cara kami menetapkan aturan adalah dengan menggunakan set_rules() fungsi dari Perpustakaan Validasi Formulir. Kami menggunakan fungsi ini sebagai berikut:
 $this->form_validation->set_rules('field_name', 'human_name', 'rules'); 

Referensi Aturan Untuk Validasi

Berikut ini adalah daftar semua aturan asli yang tersedia untuk digunakan:

RulePar..DeskripsiContoh
requiredNoReturns FALSE jika elemen form kosong.-
matchesYesReturns FALSE jika elemen formulir tidak cocok dengan yang ada di parameter.matches[form_item]
regex_matchYesReturns FALSE jika elemen formulir tidak cocok dengan ekspresi reguler.regex_match[/regex/]
differsYesReturns FALSE jika elemen form tidak berbeda dari yang ada di parameter.differs[form_item]
is_uniqueYesReturns FALSE jika elemen formulir tidak unik untuk nama tabel dan nama dalam parameter. Catatan: Aturan ini mengharuskan Query Builder diaktifkan agar berfungsi.is_unique[table.field]
min_lengthYesReturns FALSE jika elemen formulir lebih pendek dari nilai parameter.min_length[3]
max_lengthYesReturns FALSE jika elemen formulir lebih panjang dari nilai parameter.max_length[12]
exact_lengthYesReturns FALSE jika elemen formulir tidak persis dengan nilai parameter.exact_length[8]
greater_thanYesReturns FALSE jika elemen formulir kurang dari atau sama dengan nilai parameter atau tidak numerik.greater_than[8]
greater_than_equal_toYesReturns FALSE jika elemen formulir kurang dari nilai parameter, atau tidak numerik.greater_than_equal_to[8]
less_thanYesReturns FALSE jika elemen formulir lebih besar dari atau sama dengan nilai parameter atau tidak numerik.less_than[8]
less_than_equal_toYesReturns FALSE jika elemen formulir lebih besar dari nilai parameter, atau tidak numerik.less_than_equal_to[8]
in_listYesReturns FALSE jika elemen formulir tidak berada dalam daftar yang telah ditentukan.in_list[red,blue,green]
alphaNoReturns FALSE jika elemen formulir mengandung apa pun selain karakter alfabet.-
alpha_numericNoReturns FALSE jika elemen formulir berisi apa pun selain karakter alfanumerik.-
alpha_numeric_spacesNoReturns FALSE jika elemen formulir mengandung apa pun selain karakter alfa-numerik atau spasi. Harus digunakan setelah trim untuk menghindari spasi di awal atau akhir.-
alpha_dashNoReturns FALSE jika elemen formulir berisi apa pun selain karakter alfanumerik, garis bawah, atau tanda hubung.-
numericNoReturns FALSE jika elemen formulir berisi apa pun selain karakter numerik.-
integerNoReturns FALSE jika elemen formulir berisi apa pun selain bilangan bulat.-
decimalNoReturns FALSE jika elemen formulir berisi apa pun selain angka desimal.-
is_naturalNoReturns FALSE jika elemen formulir mengandung apa pun selain nomor alami: 0, 1, 2, 3, dll.-
is_natural_no_zeroNoReturns FALSE jika elemen formulir berisi apa pun selain bilangan asli, tetapi tidak nol: 1, 2, 3, dll.-
valid_urlNoReturns FALSE jika elemen formulir tidak berisi URL yang valid.-
valid_emailNoReturns FALSE jika elemen formulir tidak berisi alamat email yang valid.-
valid_emailsNoReturns FALSE jika nilai apa pun yang diberikan dalam daftar yang dipisahkan koma bukanlah email yang valid.-
valid_ipYesReturns FALSE jika alamat IP yang diberikan tidak valid. Menerima parameter opsional 'ipv4' atau 'ipv6' untuk menentukan format IP.-
valid_base64NoReturns FALSE jika string yang disediakan mengandung apa pun selain karakter Base64 yang valid.-

Aturan

Dengan melihat aturan di atas, kita sudah mengetahui aturan apa saja yang bisa digunakan. Kalian bisa memulia untuk mengatur aturan yang kalian perlukan untuk form yang akan anda buat. Pada kasus ini semua form harus di isi (required) dan kalian harus memastikan bahwa bidang email harus tervalidasi untuk memastikan bahwa email yang di input sesuai dengan format yang benar.
 $this->form_validation->
set_rules('fullname', 'Full Name', 'required|alpha');
$this->form_validation->
set_rules('email', 'Email Address',
'required|valid_email');
$this->form_validation->
set_rules('phonenumber', 'Phone Number', 'required|numeric|exact_length[10]');
$this->form_validation->
set_rules('username', 'User Name', 'required|alpha_numeric|min_length[6]|min_length[12]'); 

Check Proses Validasi

Alih-alih memeriksa salah satu bidang formulir, nilai POST untuk memeriksa apakah formulir telah dikirim, kami hanya memeriksa untuk melihat apakah Perpustakaan Validasi Form telah berjalan. Kami melakukan ini dengan menggunakan kode berikut:
 if($this->form_validation->run())
{
// get the post values
}
else
{
//load the form
} 

Sebagai contoh :

Buat tampilan signup_form
 
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Validation Form</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>

</head>
<body>
    <nav class="navbar navbar-default navbar-static-top">
        <div class="container-fluid">
            <div class="navbar-header">
                <a class="navbar-brand" href="https://www.tutorialswb.com/">Validation Form</a>
            </div>
        </div>
    </nav>
    <section id="login">
        <div class="container">
            <div class="row">
             <div class="form-wrap">

                <?php echo form_open('signupform',['name'=>'signup']);?>

                <div class="form-group">
                    <?php echo form_input(['name'=>'fullname','id'=>'fullname','placeholder'=>'Enter your full name','class'=>'form-control']);?>
                    <?php echo form_error('fullname','<div style="color:red">', '</div>'); ?>
                </div>

                <div class="form-group">
                    <?php echo form_input(['name'=>'email','id'=>'email','placeholder'=>'Enter your valid email','class'=>'form-control']);?>
                    <?php echo form_error('email','<div style="color:red">', '</div>'); ?>
                </div>

                <div class="form-group">
                    <?php echo form_input(['name'=>'phonenumber','id'=>'phonenumber','placeholder'=>'Enter your 10 digit mobile number','class'=>'form-control']);?>
                    <?php echo form_error('phonenumber','<div style="color:red">', '</div>'); ?>
                </div>


                <div class="form-group">
                    <?php echo form_input(['name'=>'username','id'=>'username','placeholder'=>'Enter your username','class'=>'form-control']);?>
                    <?php echo form_error('username','<div style="color:red">', '</div>'); ?>
                </div>

                <div class="form-group">
                    <?php echo form_password(['name'=>'password','id'=>'password','placeholder'=>'Enter your password','class'=>'form-control']);?>
                    <?php echo form_error('password','<div style="color:red">', '</div>'); ?>
                </div>

                <div class="form-group">
                    <?php echo form_password(['name'=>'cpassword','id'=>'cpassword','placeholder'=>'Confirm your password','class'=>'form-control']);?>
                    <?php echo form_error('cpassword','<div style="color:red">', '</div>'); ?>
                </div>

                <div class="form-group">
                    <?php echo form_textarea(['name'=>'address','rows'=>'5','cols'=>'10','id'=>'address','class'=>'form-control','placeholder'=>'Enter your address']);?>
                </div>  
                
                <?php echo form_submit(['name'=>'submit','value'=>'Submit','class'=>'btn btn-custom']);?>
                <?php echo form_close();?>

            </div>

        </div>
    </div>
</section>
</body>
</html> 

Buat controller signupform dan jangan lupa memuat pustaka form_validation
 <?php
class Signupform extends CI_Controller {
 public function __construct() {
  parent::__construct();
  $this->load->library('form_validation');
 }

 public function index(){
  $this->form_validation->set_rules('fullname','Full Name','required|alpha');
  $this->form_validation->set_rules('email','Email id','required|valid_email');
  $this->form_validation->set_rules('phonenumber','Phone Number','required|numeric|exact_length[10]');
  $this->form_validation->
  set_rules('username','User name','required|alpha_numeric|min_length[6]|max_length[12]|is_unique[tblusers.username]');
  $this->form_validation->set_rules('password','Password','required|min_length[6]');
  $this->form_validation->set_rules('cpassword','Confirm Password','required|min_length[6]|matches[password]');
  if($this->form_validation->run()){
   echo "Form submitted";
  }
  else{
   $this->load->view("signup_form");
  }
 }
} 

Silahkan lihat demonya dengan melihat gambar dibawah, disamping itu kalian bisa mendownload filenya dan bisa melakukannya langsung.




Sekian share kali ini semoga apa yang kami share bermanfaat bagi anda semua, jika kalian ingin request post silahkan tinggalkan komentar dibawah kami akan senang hati membahasnya untuk anda. Salam Blogger

References :
https://www.codeigniter.com/userguide3/libraries/form_validation.html
https://phpgurukul.com/form-validation-in-codeigniter/ 


SUBSCRIBE TO OUR NEWSLETTER

close