0

我正在尝试检查用户输入 $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 语句会返回一大段关于语法错误的内容。有任何想法吗?

4

3 回答 3

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 ;)';
}
于 2013-11-04T09:52:26.850 回答
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)

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

于 2013-11-04T10:32:12.637 回答
0

你可以这样做:

if(mysql_num_rows($result)==0)echo '';
于 2013-11-04T09:54:11.657 回答