查询为空时无回显

时间:2013-11-04 09:48:44

标签: php mysql

我正在尝试检查用户输入$ entry是否为空,如果是,则回显无效。我不希望它做任何事情。没有结果,它不应该显示任何东西。但是,我一直收到一个空的查询错误。

这是我的php:

$link = fConnectToDatabase();

//Retrieve parameters from querystring

$entry = fCleanString($link, $_GET['entry'], 15);


if (!empty($entry)) {

       $sql = "select price, name, image
       from geekproducts
       where name like  '%$entry%' or ' $entry '
       order by name";
       }

$result = mysqli_query($link, $sql)
     or die('SQL syntax error: ' . mysqli_error($link));

if (! ($result)){
      echo "";
    }

如果结果为空,如何让我的页面不显示?

编辑问题似乎完全在于

$result = mysqli_query($link, $sql)
 or die('SQL syntax error: ' . mysqli_error($link));

删除or die语句会返回一个关于语法错误的大段落。有什么想法吗?

3 个答案:

答案 0 :(得分:0)

怎么样

if (isset($_GET['entry']) {
  $entry = fCleanString($link, $_GET['entry'], 15);
   $sql = "select price, name, image
   from geekproducts
   where name like  '%$entry%' or ' $entry '
   order by name";
  $result = mysqli_query($link, $sql)
 or die('SQL syntax error: ' . mysqli_error($link));
} else {
  echo 'nothing ;)';
}

答案 1 :(得分:0)

你可以这样做:

if(mysql_num_rows($result)==0)echo '';

答案 2 :(得分:0)

我认为你要做的是抑制错误

$link = fConnectToDatabase();

//Retrieve parameters from querystring

$entry = fCleanString($link, $_GET['entry'], 15);


if (!empty($entry)) {

   $sql = "select price, name, image
   from geekproducts
   where name like  '%$entry%' or ' $entry '
   order by name";
   }

$result = @mysqli_query($link, $sql)

在函数抑制错误之前添加 @