【发布时间】:2016-04-06 14:02:37
【问题描述】:
我有一个 PHP 脚本,它读取用户输入,然后根据他们输入的值返回一个 JSON 数据数组。
想法是将两个 Postgres 表连接在一起,然后选择用户值等于 uprn 列(其中该列是整数)的所有条目。
我有一个类似的 PHP 脚本,它工作正常,所以 PHP 等设置正确,但是在尝试此代码时它返回 500 - 内部服务器错误。
我是否在查询条目和数组行的正确位置正确分配了单引号?
<?php
if (isset($_GET['query'])) {
// Connect to our database
$conn = pg_connect("host=myhost port=myport dbname=mydb user=myuser password=mypass");
// Retrieve the query
$query = $_GET['query'];
// Search the database for all similar items
$sql = pg_query($conn, "SELECT l.uprn, l.ward, r.ward, r.name FROM addresses.temp_addresses_plus_wards AS l LEFT JOIN council.councillors AS r ON l.ward = r.ward WHERE l.uprn = {$query}");
$array = array();
while ($row = pg_fetch_array($sql)) {
$address = array(
'ward' => $row['r.ward'],
'name' => $row['r.name']
);
array_push($array, $address);
}
sort($array);
$jsonstring = json_encode($array);
// Return the json array
echo $jsonstring;
}
?>
【问题讨论】: