mysqli 準備済みステートメントを使用して検索パラメーターが条件付きであるクエリを作成するには、適切な構造が必要です。$query -> bind_param('sss',$date,$time,$place);
'sss'
適用方法と'$date,$time,$place'
パラメータを後で順番に適用する方法がわかりません。それらを変数として渡すことはできますか?
古い MySQL の方法:
<?php
// date is obligatory
$date = mysql_real_escape_string($_GET["date"]);
$query="SELECT * FROM dbase WHERE date='$date'";
// time field is custom
if(!empty($_GET["time"])) {
$time= mysql_real_escape_string($_GET["time"]);
$buildQuery[] = "time='$time'";
}
// place field is also custom
if(!empty($_GET["place"])) {
$place= mysql_real_escape_string($_GET["place"]);
$buildQuery[] = "place='$place'";
}
// building query
if(!empty($build)) {
$query .= ' AND '.implode(' AND ',$build).' ORDER BY date';
}
?>