所以我有一个PHP文件,用户可以在其中搜索数据库中的问题,如果他们搜索随机的东西('ddwdwdwdw')等,我希望它输出一条消息,说明没有返回任何东西。然而,我遇到了一点小麻烦,可能是因为我的代码设置得不是很好?
我试过这样做:
if(mysql_num_rows($sql) < 1){
echo "blah blah blah";
} 但它会输出一个MySQL错误,因为sql失败了(在这种情况下,这显然不是一件坏事)。它在每种类型的搜索中都会输出回声消息,所以它可能是在错误的位置。谢谢你的帮助,如果我说得不通,请问我。
表单代码:
<html>
<head>
<title>Physics</title>
</head>
<body>
<p> Search for a question type. </p>
<form action = "searchingQuestions.php" method= "POST">
<select name= "Type_DROP">
Question type:
<option value = "NULL"></option>
<option value="SUVAT">Suvat</option>
<option value="FORCES">Forces</option>
<option value="WORK">Work</option>
<option value="Energy">Energy</option>
<option value = "ALL"> All </option>
</select>
<br>
<br>
<p> Or search for a certain text.</p>
<input type = "text" name = "text_try">
<br><br>
<p>Would you like to search through revision questions as well, check if you would like to. </p>
<input type = "checkbox" name = "checkbox" value = "value1">
<br><br>
<input type = "submit" id="submit" value="search">
<div id= "name-data"></div>
</form>
</body>
</html>发布于 2016-04-09 23:27:42
在这里提问之前,请花时间阅读您使用的工具和函数的文档:
http://php.net/manual/en/function.mysql-num-rows.php
它包括一个简单的示例,展示了如何使用该函数。简而言之:首先必须执行查询,获得一个资源句柄,然后将其作为参数传递给mysql_num_rows()函数:
<?php
$link = mysql_connect("localhost", "mysql_user", "mysql_password");
$result = mysql_query("SELECT * FROM table", $link);
$num_rows = mysql_num_rows($result);发布于 2016-04-09 23:31:17
需要mysql查询对象的mysql_num_rows()。试试这个:
$result = mysql_query($sql, $link);
if(mysql_num_rows($result) < 1){
echo "blah blah blah";
}注意:在最新的php版本中,mysql函数已被弃用,取而代之的是mysqli函数。
https://stackoverflow.com/questions/36518831
复制相似问题