7
我想從Postgresql數據庫中的一行中獲取內容,並將它的小寫版本與用戶輸入的小寫版本進行比較,以檢查它是否存在於數據庫中。Postgresql小寫字母比較數據
我想:
"SELECT LOWER(name) FROM user_names WHERE name LIKE '%$search%' ORDER BY name ASC"
但使查詢根本不工作。
編輯
我想實現自動完成jQuery UI的喜歡這裏: http://jqueryui.com/demos/autocomplete/#remote 的搜索框(地名)
使用JavaScript和PHP。
PHP代碼:
$search = ($_GET['term']);
if (!$con)
{ die('Could not connect: ' . pg_last_error());}
else
{
$sql = "SELECT name FROM users_table WHERE name LIKE '%$search%' ORDER BY name ASC";
$result = pg_query($sql);
$json = '[';
$first = true;
while ($row = pg_fetch_array($result))
{
if (!$first) { $json .= ','; } else { $first = false; }
$json .= '{"value":"'.$row['name'].'"}';
}
$json .= ']';
echo $json;
exit();
}
JavaScript代碼:
$(document).ready(function()
{
$('#auto').autocomplete(
{
source: "./file.php",
minLength: 3
})
})
所有上述工作偉大的..酷似演示這裏:http://jqueryui.com/demos/autocomplete/#remote
我的問題是,數據庫中以大寫形式存儲的名稱(例如LORI) ,並且用戶當然希望在搜索框中插入小寫字母來搜索姓名(例如,洛瑞)。但由於它以大寫形式存儲,我需要將其轉換。
我想爲你的建議:
$sql = "SELECT LOWER(name) FROM users_table WHERE name ILIKE '%$search%' ORDER BY name ASC";
然後我有一個空的下拉列表中! 很奇怪!
在此先感謝。
感謝,但我依然從JSON有一個空的數組,如果我使用較低 – Shadin 2012-04-29 05:17:33
@Shadin對不起,我是不是在我的崗位很清楚。建議是把LIKE改成ILIKE – dwurf 2012-04-29 05:21:16
是的,我注意到了,試了一下。我不明白爲什麼我得到一個空陣列 – Shadin 2012-04-29 10:13:49