Php Codeigniter调用未定义的方法CI_DB_mysqli_result::num_row()
我将此代码用于登录\u模型:Php Codeigniter调用未定义的方法CI_DB_mysqli_result::num_row(),php,codeigniter,Php,Codeigniter,我将此代码用于登录\u模型: 类登录\u模型扩展了CI\u模型{ function __construct(){ parent:: __construct(); } function check(){ $username = $this->input->post('username',true); $password = $this->input->post('password',true); $remember = $this->
function __construct(){
parent:: __construct();
}
function check(){
$username = $this->input->post('username',true);
$password = $this->input->post('password',true);
$remember = $this->input->post('remember',true);
/*
$this->db->select('username','username');
$this->db->select('password','password');
$this->db->where('username',"$username");
$this->db->where('password',md5($password));
$this->db->from('user');
$this->db->limit(1);
$is = $this->db->count_all_results();
*/
$user = $this->db->get_where ('user',array('username'=>$username,'password'=>md5($password)));
$is = $user->num_row();
if($is>0){
$id = $user->row(0)->id;
$data_session=array(
'username'=>'$username',
'login'=> true,
'id'=>$id
);
$this->session->set_userdata($data_session);
if($remember == 1){
$login_text= $username.'_isLogin_'. $id;
$this->load->library('encrypt');
$cookie_value = $this->encrypt->encode($login_text,ENCRYPT_KEY);
$data_cookie=array(
'name'=>'Ahmadreza',
'value'=>$cookie_value,
'expire'=>time()+60*60*24*365
);
$this->input->set_cookie($data_cookie);
}
redirect('post/index');
}else{
redirect('login/index');
}
}
}
num\u rows()
而不是num\u row()
取代
$is = $user->num_row();
与
它是num\u row()
而不是num\u row()
取代
$is = $user->num_row();
与
没有任何函数调用
num_row()代码>在代码点火器中
所以正确的方法是num_rows()代码>
所以最终的井型代码是
$is = $user->num_rows();
注意:
并非所有数据库驱动程序都有获取结果集总行数的本机方法。在这种情况下,所有数据都会被预取,并对结果数组手动调用count()
,以获得相同的结果
没有任何函数调用num_row()代码>在代码点火器中
所以正确的方法是num_rows()代码>
所以最终的井型代码是
$is = $user->num_rows();
注意:
并非所有数据库驱动程序都有获取结果集总行数的本机方法。在这种情况下,所有数据都会被预取,并对结果数组手动调用count()
,以获得相同的结果
校验编码器
它的$user->num_rows() 检查编码器
它的$user->num_rows() 从我的代码中解决一个小问题:我使用$is=$user->num_row();但我应该使用:$is=$user->num_rows();我没有在第行后面使用“s”,只是假设代码正常工作是导致错误的主要原因。你需要经常检查可能发生的错误,即使你认为不会发生什么坏事。从我的代码中解决一个小问题:我使用$is=$user->num_row();但我应该使用:$is=$user->num_rows();我没有在第行后面使用“s”,只是假设代码正常工作是导致错误的主要原因。你需要经常检查错误,即使你认为不会有什么不好的事情发生。