我有这段代码:
require_once('connectvars2.php'); //This is the connection to my database
$data = mysql_query("SELECT * FROM calzone ORDER BY id DESC");
if (isset($_POST['submit'])) {
$post = trim($_POST['post']);
$data = mysql_query("SELECT * FROM calzone WHERE overskrift LIKE '%$post%' OR postnummer = '$post'");
if (!(empty($data))) { // This is my poor attempt :-)
echo 'No result!';
}
}
这是我网站上的搜索功能。
如果没有与搜索词匹配的查询,我希望它返回一些内容。如果我写“6737”并且数据库没有找到结果,则应该打印“抱歉,但搜索没有结果!”。 有没有办法让MySQL检查是否有任何查询?如果没有,请回复一些文字?
答案 0 :(得分:2)
使用mysql_num_rows
$data = mysql_query("SELECT * FROM calzone WHERE overskrift LIKE '%$post%' OR postnummer = '$post'");
if(mysql_num_rows($data) > 0){
//show your data
}
else{
echo "Sorry, but there are no results for your search!";
}
另外,如上所述,不推荐使用mysql_query。切换到PDO。
答案 1 :(得分:1)
使用mysql_num_rows
功能计算否。行...
$data = mysql_query("SELECT * FROM calzone WHERE overskrift LIKE '%$post%' OR postnummer = '$post'");
$num=mysql_num_rows($data);
if($num==0)
{
echo 'Sorry, but theres no results for your search';
}
答案 2 :(得分:1)
require_once('connectvars2.php'); //This is the connection to my database
$data = mysql_query("SELECT * FROM calzone ORDER BY id DESC");
if (isset($_POST['submit'])) {
$post = trim($_POST['post']);
$data = mysql_query("SELECT * FROM calzone WHERE overskrift LIKE '%$post%' OR postnummer = '$post'");
if (mysql_num_rows($data) == 0){
echo "Sorry, but there's no results for your search!";
}else{
echo "matched";
}
}
答案 3 :(得分:1)
使用
if(mysql_num_rows($data)==0){
echo "Sorry, but there's no results for your search";
}
答案 4 :(得分:0)
您可能正在寻找mysql_num_rows
像这样使用
$data = mysql_query("SELECT * FROM calzone WHERE overskrift LIKE '%$post%' OR postnummer = '$post'");
if (mysql_num_rows($data) == 0) {
echo 'No result!';
}
旁注;您正在使用mysql_XX函数来访问数据库。这些已被Mysqli和MySQL(PDO)取代。使用其中一个最新的库。
答案 5 :(得分:0)
使用mysql_num_rows($ data)== 0
虽然你应该使用mysqli而不是mysql,因为现在不推荐使用mysql
答案 6 :(得分:0)
首先,您不应该使用mysql_
- 函数导致不推荐使用此PHP扩展。请尝试使用PDO
或Mysqli
扩展名。
顺便说一下,此扩展程序中mysql_num_rows
function可以完全按照您的意愿行事。
$data = mysql_query("SELECT * FROM calzone WHERE overskrift LIKE '%$post%' OR postnummer = '$post'");
if (!mysql_num_rows($data)) {
echo 'No result!';
}
答案 7 :(得分:0)
使用http://www.php.net/manual/en/function.mysql-num-rows.php
$result = mysql_query("SELECT * FROM table1", $link);
$num_rows = mysql_num_rows($result);
echo "$num_rows Rows\n";