我有一个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;
}
?>
答案 0 :(得分:0)
我意识到我只需要删除数组的表别名,它现在可以正常工作了!