我正在尝试在Codeigniter-4中创建一个基于电话和密码的登录,我已经创建了表单,这是我的控制器
public function auth(){
$model = new LoginModel();
$user_phone = $this->request->getVar('user_phone');
$password = $this->request->getVar('password');
$result = $model->where("user_phone", "$user_phone");
if($result->numRows === 1){
$user = $result->row_array();
if($this->password->verify_hash($password, $user['password'])){
unset($user['password']);
return $user;
} else {
echo ('login');
}
} else {
echo ('login');
}}
这是我的模型
class LoginModel extends Model
{
protected $table = 'users';
protected $allowedFields = ['username', 'password', 'user_phone'];
}这是我的观点
<?php
$req_c = $member["username"];
?>
<div class="app-body__item-content padded">
<div class="panel-body"><?= $req_c ?></div>
?>
</div>
<?php endforeach; ?>
<?php endif; ?>但它不会在视图中返回用户详细信息
发布于 2020-07-19 02:22:19
我认为因为您在这里使用了双引号,所以它使您的$user_phone变量成为字符串
$result = $model->where("user_phone", "$user_phone");应该是这样的
$result = $model->where("user_phone", $user_phone);或者这个
$result = $model->where(["user_phone"=> $user_phone]);https://stackoverflow.com/questions/62145796
复制相似问题