我想創建一個登錄表單驗證。我需要檢查用戶名和電子郵件是否已經存在。如果存在顯示錯誤<?php defined('BASEPATH') OR exit('No direct script access allowed'); class Insert extends CI_Controller { // For data insertion public function index(){ //Setting validation rules $this->form_validation->set_rules('firstname','First Name','required|alpha'); $this->form_validation->set_rules('lastname','Last Name','required|alpha'); $this->form_validation->set_rules('emailid','Email id','required|valid_email'); $this->form_validation->set_rules('contactno','Contact Number','required|numeric|exact_length[10]'); $this->form_validation->set_rules('address','Address','required'); if($this->form_validation->run()){ $fname=$this->input->post('firstname'); $lname=$this->input->post('lastname'); $email=$this->input->post('emailid'); $cntno=$this->input->post('contactno'); $adrss=$this->input->post('address'); //loading model $this->load->model('Insert_Model'); $this->Insert_Model->insertdata($fname,$lname,$email,$cntno,$adrss); $this->load->view('insert'); } else { $this->load->view('insert'); } } }
3 回答

一只萌萌小番薯
TA貢獻1795條經驗 獲得超7個贊
您想要做的是修改表單驗證規則,如下所示:
只需is_unique[tablename.fieldname]
向表單驗證添加規則即可。例如:
$this->form_validation->set_rules('emailid','Email id','required|valid_email|is_unique[yourTableName.yourEmailFieldName]');
順便說一句:您也可以在電子郵件規則中使用修剪

慕森王
TA貢獻1777條經驗 獲得超3個贊
您也可以分配您的自定義驗證方法
$this->form_validation->set_rules('emailid','Email id','required|valid_email|callback_username_check');
public function username_check($str)
{
//your db query to check email exists and return true or false
}
- 3 回答
- 0 關注
- 138 瀏覽
添加回答
舉報
0/150
提交
取消