我有以下代码:笨的活动记录帐户验证
MODEL:
function check_account($account_details){
$query = $this->db->get_where('admin', array('username' => $account_details['username'] ,
'password' => $account_details['password']))->result_array();
if(!empty($query)){
return 'Admin';
}
else{
$query2 = $this->db->get_where('user_mst', array('username' => $account_details['username'],
'password' => $account_details['password']))->result_array();
if(!empty($query2)){
return 'User';
}
else return FALSE;
}
}
我只贴我的模型,因为只查看用户名和密码,并在控制器由输入字段只检索输入的数据并传递给模型中的函数。上面的代码片段是控制器调用的函数。
我只有1个登录页面,它首先检查输入的帐户是否存在于管理表中,如果不存在,则检查它是否存在于用户表中。如果输入的帐户不属于2个表格,则返回false。
我首先检查了管理表,因为管理员中的帐户属于少数。而在用户中将是绝大多数大部分账户。例如,如果我有5个管理员帐户和1000个用户帐户。
而不是检查输入的帐户是否是这1000个之一,它首先检查它是否属于管理表中的5。
希望我的解释清楚或至少可以理解。
我的问题是,当我输入说,SampleAccount作为用户名,即使在数据库中所有在小盘股仍然会返回,就好像它是相同的。
SampleAccount(输入)= sampleaccount(数据库) - 不应在查询中返回。
而且,我想阅读一些专业对IM如何检查帐户,意见,或者我应该只是做既为用户和管理员2个登录页面。