複数オプションの検索を作成しようとしています。私はどこからでも見てきましたが、適切な解決策を見つけることができないようですが、多くのウェブサイトでこれがあります。 だから私は(あなたが少しない穴に切り捨てられます)私のHTMLフォームを持っている:PHP Mysqli詳細検索(マルチオプション)
<form method="get" id="searchForm" name="searchForm" action="search-text.php" >
<select name="make" id="make">
<option value="">ANY MAKE</option>
<option value="make1">MAKE1</option>
<option value="make2">MAKE2</option>
</select>
<select name="model" id="model">
<option value="">ANY MODEL</option>
<option value="model1">MODEL1</option>
<option value="model2">MODEL2</option>
</select>
<select name="minprice" id="minprice">
<option value="">ANY PRICE</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<select name="maxprice" id="maxprice">
<option value="">ANY PRICE</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
</form>
その後search.phpページに、私はすべての変数を取得することができますが、私はSELECTクエリを記述するために苦労しています。私はANDを使用しようとしましたが、もちろん、これはすべての変数が設定されている場合にのみ機能します。私は合計で8つの変数を設定することができます。 私は以下のようなことをしようとしましたが、明らかに行く方法ではありません。
SELECT * FROM search data where if(isset($make)) AND if(isset($model)) etc etc
ご協力いただきありがとうございます。アドバイスをいただければ幸いです。私はできる限り多くのことを学ぼうとしていますが、私は本当にこのことに固執しています。
UPDATE:だから私はいくつかの創造的な実験を行っていると私は近いんだと感じ、それが働いて得ることができません。
$query = array();
if (!empty($_GET['vType'])) {
$query[] = "vType='$vType'";
}
if (!empty($_GET['make'])) {
$query[] = "make='$make'";
}
if (!empty($model)) {
$query[] = "model='$model'";
}
if (!empty($yearfrom)) {
$query[] = "minyear >'$yearfrom'";
}
if (!empty($yearto)) {
$query[] = "maxyear>'$yearto'";
}
if (!empty($minprice)) {
$query[] = "minPrice >'$minprice'";
}
if (!empty($maxprice)) {
$query[] = "maxyear >'$maxprice'";
}
if (!empty($location)) {
$query[] = "location='$location'";
}
if (empty($query)){
$where = "WHERE";
}else{
$where = "";
}
$query = implode(' AND ', $query);
$sql = "SELECT * FROM searchdata $where $query";
$result = mysqli_query($conDB, $sql);
if (mysqli_num_rows($result) === 0) {
echo 'Nothing Found';
}
while ($row = $result->fetch_assoc()) {
echo $row['vType'];
私はここに非常に多くの何か間違ったことをやっていると確信しています。おかげで皆私は本当にあなたの助けに感謝します
は、あなたが送信ボタンを持っていますか? –
具体的にどのようにフレームを照会したいか教えてください! – Jagrati