我正在编写PHP脚本,以便能够使用从上面的表单中获取的数据搜索我的表。如您所见,它由选择框,日期范围和输入框组成。
我已在此处编写此脚本,它仅适用于纯文本框。我不知道如何选择包含多个选项的选择框。
另外,我不确定我是否做了正确的事情。因为它似乎被迫重命名我的名称属性以匹配表列。它是tedius,因为我的桌子有超过150列。
这是我的代码:
public function search(Request $request)
{
foreach($this->fields as $field){
if(isset($_POST[$field]) && $request->get($field) != '') {
$data = $request->get($field);
$this->conditions[] = "`$field` = '" . $data . "'";
}
}
$query = "SELECT * FROM csv_data_final ";
if(count($this->conditions) > 0) {
$query .= "WHERE " . implode (' AND ', $this->conditions);
}
return $results = DB::select( $query ); // I'm using Laravel's Query Builder
}
答案 0 :(得分:0)
多个选择框,多个复选框始终显示为 阵列。 其他字段如Single Select,texbox,textarea或radio都会以字符串形式发布。
检查您发布的字段是否为数组。
if (isset($_POST[$field]) && $request->get($field) != '') {
$data = $request->get($field);
if (is_array($data) {
foreach ($data as $curr) {
$this->conditions[] = "`$field` = '" . $curr . "'";
}
}
else {
$this->conditions[] = "`$field` = '" . $data . "'";
}
}