【发布时间】:2013-07-04 23:08:30
【问题描述】:
我需要一个好的结构来构建查询,其中搜索参数是有条件的,使用 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';
}
?>
【问题讨论】: