为什么这个PHP MySQL查询不起作用?

Sco*_*ott 2 php mysql

我有这个作为我的PHP代码:

$username=($_POST['username']);
$password=($_POST['password']);
$query="SELECT * from 'User' WHERE 'Username'='$username'";
mysql_query($query);

if($rows==0)
{
echo"<p> No rows found</p>";
}

else
{

while($row=mysql_fetch_array($query))
{
echo"rows found";
}

}
mysql_close($conn);
Run Code Online (Sandbox Code Playgroud)

我的表单代码如下:

<form name="login" action="mydamhlogin.php" method="POST">
<p>Username:<input type="text" name="username"></p>
<p>Password<input type="password" name="password"></p>
<p><input type="submit" value="Login"></p>
</form>
Run Code Online (Sandbox Code Playgroud)

我的数据库列名为Username,我正在尝试选择与从表单中获取的$ username匹配的行,但它始终不返回任何行,但这些行肯定在数据库中.

cha*_*ool 9

您正在使用错误的转义字符,因为单个qoutes使用反引号运算符而不是这样

$query="SELECT * from `User` WHERE `Username`='$username'";
$result = mysql_query($query);
Run Code Online (Sandbox Code Playgroud)

此外$行是空的,你需要这样做

$rows = mysql_num_rows($result);
Run Code Online (Sandbox Code Playgroud)

然后使用这个$ rows变量来检查它的值.