0

因此,我正在尝试创建一个登录系统,但它无法正常工作,因为每次我通过此代码测试行数时:

$username=$_POST['username']; 
$password=$_POST['password']; 
$username = stripslashes($myusername);
$password = stripslashes($mypassword);
$username = mysqli_real_escape_string($username);
$password = mysqli_real_escape_string($password);
$result=mysqli_query($connect,"SELECT * FROM users  WHERE username='$username'");
$count=mysqli_num_rows($result);
if($count==1){

但是每次我运行它时它都不会返回 1,我什至不知道如何检查它返回的内容,当我删除 $username 的 '' 标记时,它会出现无效查询

我使用 PHP 5.4.4-14、Mysql Ver 14.14 Distrib 5.5.31、使用 readline 6.2 的 debian-linux-gnu (armv7l) 和 Apache/2.2.22 (Debian)

4

1 回答 1

0

您应该真正切换到准备好的语句,而不是直接在查询中注入变量,但是您的问题是由mysqli_real_escape_string(). 该函数需要两个参数,第一个是 mysqli 连接。

于 2013-06-05T02:34:23.543 回答