嗨,我是新的PHP和搜索框,我创建了一个表格如下
<form method="post" action="search.php">
<select name="purpose">
<option value="" selected="selected">-any-</option>
<option value="For Sale">For Sale</option>
<option value="For Rent">For Rent</option>
</select>
<select name="type">
<option value="" selected="selected">-any-</option>
<option value="Bungalow">Bungalow</option>
<option value="Apartment">Apartment</option>
</select>
<select name="location">
<option value="" selected="selected">-any-</option>
<option value="Norway">Norway</option>
<option value="Itley">Itley</option>
</select>
<input type="submit" value="Search">
</form>
Search.php
我正在尝试这些问题,但遇到问题
$purpose=$_POST['purpose'];
$type=$_POST['type'];
$location=$_POST['location'];
如果我把这样的AND查询
SELECT * FROM test WHERE purpose='$purpose' AND location='$location' AND type='$type'
然后它不会逐个过滤结果它显示为空白
如果我把OR查询这样
SELECT * FROM test WHERE purpose='$purpose' OR location='$location' OR type='$type'
然后它过滤混合结果
我想如果所有选择它过滤(目的>>类型>>位置)和如果一个选择然后过滤,但确切的结果,否则显示
Result not found!
先生,我这样做,但显示错误
$ qry =“SELECT * FROM test WHERE 1 = 1”;
if($ purpose!=“”)$ qry . =“AND purpose ='$ purpose'”;
if($ location!=“”)$ qry . =“AND location ='$ location'”;
if($ type!=“”)$ qry . =“AND type ='$ type'”;
while($ row = mysql_fetch_array($ sql))
echo $ row ['purpose'];
echo $ row ['location'];
echo $ row ['type'];
我想如果不匹配显示结果没有找到,否则它将被所有和逐个过滤
2 回答
获取变量后放置:
EDIT: After seeing your comments
首先,您应该使用mysql_connect函数 Build 与数据库的连接 . 比方说,你有这段代码:
在$ link var中你现在有了你的mysql句柄 . 这段代码必须放在你想要使用mysql连接的每一页的第一页 . 一旦你有了SQL语句(在我第一次编写的代码中,$ sql var),请在以下后使用: