php查询数据库返回空白结果

时间:2016-03-03 05:31:28

标签: php sql database postgresql connection

-----更新

当我从我的学校public_html文件夹运行代码时,代码可以正常运行。但是,当我创建完全相同的文件时,上传到我的个人Web服务器它不起作用,只生成一个空白屏幕。不完全确定这意味着什么,也许我没有权限?

更新了代码以反映建议(仍无效)

-----------

您好,我是一名学习使用php和postgres的学生。目前我只是想在我的学校服务器上打开从托管网站到我的数据库的连接。我用以下的php文件得到一个空白的结果。

我把' xxxxx'作为连接字段,以便不泄露我的用户名和密码 - 真实文件具有正确的信息。

我的问题是......这个php文件有什么问题吗?

<html>
<body>
<h1>Test</h1>

<?php
$username = "xxxxx"
$password = "xxxxx";
$databasename = "xxxxx";
$hostname = "xxxxx";

$connection = pg_connect("host=$hostname dbname=$databasename user=$username password=$password") or die ("could not connect");

$query = "SELECT unit_name from units";

$result = pg_query($connection, $query) or die("ERROR: " . pg_last_error());

$row = 0;
while ($row = pg_fetch_row($result)) {
    echo "$row[0]<br>\n"
};


pg_close($connection);
?> 

</body>
</html>

2 个答案:

答案 0 :(得分:0)

您必须使用pg_fetch_row
试试这个

$query = "SELECT unit_name from units";

$result = pg_query($connection, $query) or die("ERROR: ".pg_last_error());

if(!result)
{
    echo "An error occurred.\n";
    exit;
} 

$data = [];
while ($row = pg_fetch_row($result)) {
   $data[] = $row; 
}

foreach($data as $value)
{
   echo $value;
}

答案 1 :(得分:0)

本代码的成功就在我身边!试试这个。

$link = mysqli_connect("YourHostname", "Your Username", "YourPassword", "YourDBName");

// Check conn
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}

$sql="/*Your SQL CODE HERE*/";

if(mysqli_query($link, $sql)){
 echo "Success!";
} else{
 echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}

// close connection
mysqli_close($link);