所以我正在尝试创建一个登录系统并且它不起作用,因为每次我通过这段代码测试行数:
$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,debian-linux-gnu(armv7l)使用readline 6.2和Apache / 2.2.22(Debian)
答案 0 :(得分:0)
您应该切换到预准备语句,而不是直接在查询中注入变量,但问题是由mysqli_real_escape_string()
引起的。该函数需要两个参数,第一个是mysqli连接。