在pg_query之后,echo不起作用

时间:2016-12-06 13:30:04

标签: php postgresql

我目前正在尝试从我的数据库中检索信息,并使用php文件显示此数据,但它无法按预期工作。这是我的代码:

<?php
  require("dbconnect.php");

  if(!$db){
   echo "Error: Unable to open database";
  } else {
   echo "Opened database successfully";
  }

  $result = pq_query($db, 'SELECT * FROM example');
  if (!$result) {
    echo "Error: Cant access table";
    exit;
  }
  else {
    echo "Everything works fine";
  }

  pg_close($db);
?>

注意:dbconnect.php使用pg_connect()打开与数据库的连接,并将其保存到$ db。

我希望它显示Opened database successfully Error: Cant access table因为我还没有创建一个表示例。但我只得到Opened database successfully。所以我在echo "Test";之前添加了pg_close($db);,并期望它显示Opened database successfully Test,但不会,它只会显示Opened database successfully

然后我尝试用php创建一个新表,所以我添加了

pg_query($db, 'DROP TABLE IF EXISTS example');
pg_query($db, 'CREATE TABLE example (col char(1))');
$result = pq_query($db, 'SELECT * FROM example');之前

。我在此之后用ssh连接到服务器并使用psql检查表是否存在并且确实存在,因此连接应该正常工作。但它仍然只显示Opened database successfully,我预计Opened database successfully Everything works fine。我真的不知道为什么$result = pq_query($db, 'SELECT * FROM example');之后的每个回声都不起作用。有人可以向我解释什么是错的吗?

1 个答案:

答案 0 :(得分:0)

将pg_query更改为pg_query。

请注意,您使用的是Q而不是G。