Php 警告:mysql_num_rows()要求参数1为资源,给定布尔值
我不知道为什么它总是告诉我 mysql_num_rows()希望参数1是资源,布尔值在第44行的C:\xampp\htdocs\schedule2\course.php中给出Php 警告:mysql_num_rows()要求参数1为资源,给定布尔值,php,mysql,Php,Mysql,我不知道为什么它总是告诉我 mysql_num_rows()希望参数1是资源,布尔值在第44行的C:\xampp\htdocs\schedule2\course.php中给出 if(isset($_POST['course'])和&isset($_POST['coursedesc'])) { $course=$_POST['course']; $coursedesc=$_POST['coursedesc']; $query=mysql\u query(“SELECT*FROM.tb
if(isset($_POST['course'])和&isset($_POST['coursedesc']))
{
$course=$_POST['course'];
$coursedesc=$_POST['coursedesc'];
$query=mysql\u query(“SELECT*FROM.tblurser.”其中CourseCode='''.$course'.'和CoursedDescription='.''.$coursedesc'.''”;
if(mysql_num_rows($query)>0)
{
回显“警报('数据已存在');”;
}否则{
如果(空($course)或空($coursedesc))
{
回声“
警报(\“所有字段均为必填项\”);
";
}否则{
if(mysql_查询(“插入到tblcourse值(“,$course”,“$coursedesc”)中”)
{
}否则{
回声“
警报(\“请重试\”);
";
}
}
}
}
引用此处的文档:,mysql\u查询在某些情况下将返回false:
“如果用户没有访问查询引用的表的权限,mysql_query()也将失败并返回FALSE。”
此外,您可能有一个简单的单词“tblurser”,或者缺少一个“$”。这两种方法都应该得到修复。plz check,如果出现问题,mysql\u查询将返回false(布尔值)。这将匹配您的错误消息(给出的是布尔值而不是资源)。您可以使用“mysql\u error()”检查最后一个错误
HTH,您的查询失败了,您盲目地认为成功了,而现在事情已经爆炸了,您的代码正在缓慢前进,留下了混乱和破坏的痕迹。在您的文件“course.php”的第44行,您有
mysql_num_rows()
,它希望参数1是资源,您提供了一个boolean@amal-不,他错过了美元。而且,您不必引用表名将tblurser更改为$tblurser。通过使用外部变量构建SQL语句,您将面临SQL注入攻击。此外,任何带有单引号的输入数据,如“O'Malley”的名称,都会破坏您的SQL查询。请了解如何使用参数化查询(最好是PDO模块)来保护您的web应用程序。有很多例子让你开始学习,还有很多详细的例子。哦,谢谢,我该怎么办?再次感谢:)不幸的是,我无法说出查询失败的原因。tblurser您的表名正确吗?如果是这样,请将查询从“SELECT*from”.tblurser.…”更改为“SELECT*from tblurser…”。否则,可能会丢失一个“$”?谢谢,我输入了错误的表格:))应该是tblcourse
if(isset ($_POST['course']) && isset($_POST['coursedesc']))
{
$course = $_POST['course'];
$coursedesc = $_POST['coursedesc'];
$query = mysql_query("SELECT * FROM ".tblurser." WHERE CourseCode ='".$course."' and CourseDescription = '".$coursedesc."'");
if(mysql_num_rows($query) > 0)
{
echo"<script>alert('Data already exist.');</script>";
}else{
if(empty($course) or empty($coursedesc))
{
echo "<script>
alert(\"all fields are required \");
</script>";
}else{
if(mysql_query("INSERT INTO tblcourse VALUES('','$course','$coursedesc')"))
{
}ELSE{
echo"<script>
alert(\"Please try again\");
</script>";
}
}
}
}