我正在使用代码点火器,如何将查询的输出提供给函数returnQuery?然后将该值传递给我的控制器。
public function returnQuery() {
$sql = "SELECT USERCODE FROM tbl_users where USERNAME =? AND PASSWORD = ?";
$data = array(
'USERNAME' => $this->input->post('USERNAME'),
'PASSWORD' => $this->input->post('PASSWORD')
);
$query = $this->db->query($sql, $data);
}
答案 0 :(得分:2)
您可以像CodeIgniter中的核心PHP一样返回任何函数的值。
修改行:
$query = $this->db->query($sql, $data);
要:
return $this->db->query($sql, $data);
请注意,我已删除$query
分配,因为它未在任何地方使用。
我们可以在没有它的情况下返回数据。
答案 1 :(得分:0)
阅读完评论后,您可以将数据返回为:
public function returnQuery()
{
$sql = "SELECT USERCODE FROM tbl_users where USERNAME =? AND PASSWORD = ?";
$data = array( 'USERNAME' => $this->input->post('USERNAME'), 'PASSWORD' => $this->input->post('PASSWORD') );
$query = $this->db->query($sql, $data);
$result = $query->result_array();
if(count($result) > 0){
return $result[0]["USERCODE"];
}
else{
return 0;
}
}
现在如何使用重定向:
//call function
$q = $this->login_model->returnQuery();
if ($q == 1){
redirect('login/adminIndex');
}
elseif ($q == 2) {
redirect('login/userIndex');
}
else{
redirect('login/restricted');
}
请注意,代码中没有比较您要分配的值
if ($q = 1)
这应该是if ($q == 1)