Вот мой код я м проверить имя пользователя уже существует или нет в datbase , когда я проверить и отправить форму продублировать запись вошла в базу данных я хочу, что если уже существует, то он показывает ошибку проверкиформа проверки функции обратного вызова не работает
Мой контроллер
public function index()
{
if($this->input->post('submit')) {
$this->form_validation->set_rules('name', 'User Name', 'callback_checkuser');
$this->form_validation->set_rules('role', 'Role', 'trim|required');
$this->form_validation->set_rules('pass', 'Password', 'trim|required');
if($this->form_validation->run()==TRUE)
{
$user['u_name'] = $this->input->post('name');
$user['role'] = $this->input->post('role');
$user['password']= md5($this->input->post('pass'));
$u_id = $this->custom_model->add_user($user);
if($u_id){
$data['msg'] = 'Successfully Created!!!!';
}
}
}
$this->load->template('add_user', $data);
}
function checkuser($name) {
if($this->custom_model->check_name($name) == false) {
false;
}else {
$this->form_validation->set_message('checkuser', 'This user already exist');
return true;
}
}
Вот моя модель
public function check_name($name) {
$sql = "SELECT * FROM users WHERE u_name='".$name."' ";
$query = $this->db->query($sql);
$res = $query->row_array();
if (is_array($res) && count($res) > 0){
return $res;
}
return false;
}
NB: в 'checkuser' у вас есть' false', не предшествующий 'return'. – trincot
Я добавил возврат, но все еще записываю добавить в databse –
В рамках функции проверки правильность/ложная логика полностью обратная. – Sparky