【发布时间】:2011-02-28 16:08:54
【问题描述】:
我正在尝试进行搜索,用户可以根据某些条件搜索某些场所(夜总会)。
到目前为止,我已经制作了一个搜索框,用户可以在其中输入俱乐部的名称和一个列表菜单来选择位置。
下拉列表菜单(从数据库动态生成)如下:
地点:
Select
Westlands
Eastleigh
Langata
Kamukunji
Dagoretti
Starehe
Makadara
我想让它这样,如果用户将文本字段留空并选择 westlands 并点击搜索按钮,则会显示 westlands 的所有俱乐部。 This is working fine.
此外,用户可以在文本框中输入内容并将列表菜单保留为默认选择,然后将显示匹配结果。 This is working fine too.
我还希望当用户在文本框中输入“P”并选择 Westlands 时,所有以字母“P”开头的俱乐部都会显示出来。 This is not working.
我的代码:
//get textfield search value
$search_value = "-1";
if (isset($_POST['event_search']))
{
$search_value = $_POST['event_search'];
$search_value = mysql_real_escape_string($search_value);
}
//get location search value
$location_search_value = "-1";
if (isset($_POST['location']))
{
$location_search_value = $_POST['location'];
$location_search_value = mysql_real_escape_string($location_search_value);
}
//query establishments table
mysql_select_db($database_connections, $connections);
$query_establishment = "SELECT establishment_id, establishment_thumb_url, establishment_name, establishment_pricing, location_name
FROM establishment JOIN location ON establishment.location_id = location.location_id WHERE (establishment_name LIKE '".$search_value."%'
AND establishment.location_id = '$location_search_value') OR (establishment_name LIKE '".$search_value."%'
OR establishment.location_id = '$location_search_value')";
$establishment = mysql_query($query_establishment, $connections) or die(mysql_error());
$totalRows_establishment = mysql_num_rows($establishment);
截至目前,当我在文本框中输入“P”并选择 westlands 时,所有以字母 P 开头的俱乐部都会出现,无论位置如何。我该如何解决这个问题?
非常感谢任何帮助。
【问题讨论】: