每次我尝试使用此脚本创建帐户时,都会收到以下错误:“警告:mysql_num_rows()期望参数1为资源,第16行的C:\ xampp \ htdocs \ registration.php中给出布尔值 记录成功插入“
我正在尝试检查帐户名是否已存在。
我在这个网站上做了很多搜索,但我似乎无法解决这个问题。
这是我的代码:
<?php
Include 'connect.php';
If(isset($_REQUEST['submit'])!='')
{
If($_REQUEST['Username']=='' || $_REQUEST['Password']=='')
{
Echo "please fill the empty field.";
}
Else
{
$result = mysql_query("SELECT Username FROM accounts WHERE Username = ".$_REQUEST['Username']."");
$sql="insert into accounts(Username,Password) values('".$_REQUEST['Username']."', '".$_REQUEST['Password']."')";
$res=mysql_query($sql);
if(!mysql_num_rows($result) >= 1)
{
Echo "Record successfully inserted";
}
Else
{
Echo "There is some problem in inserting record";
}
}
}
?>
答案 0 :(得分:0)
你也必须在SQL中使用字符串引号。而不是
$result = mysql_query("SELECT Username FROM accounts
WHERE Username = ".$_REQUEST['Username']."");
使用
$result = mysql_query("SELECT Username FROM accounts
WHERE Username = '".$_REQUEST['Username']."'");
请阅读有关SQL查询的安全性的内容。请注意,mysql
扩展程序是obsolet,而且应该使用新的mysqli
扩展名或PDO
。