可以';我不知道如何获得多个搜索变量的结果


Can't figure out how to get results for multiple search variables

我已进入带有分页页面的搜索结果的最后一步。我有所有的工作,但只有当有搜索输入文本字段。我需要它能够接受search_text的多个值,因为会有几个搜索选项。也就是说,如何将$pagination传递给值,并完成下面所写的工作?页面上HTML表单上的所有表单输入类型都具有名称search_text。

我在以前的一个没有分页的搜索代码中使用过这种方法,我将多个搜索查询选项导入search.php,如下所示:

//the HTML form from another page that is sending the two values
<form name="search" method="post" 
action="http://example.com/search"> Seach for: <input type="text" 
name="search_text[]" /> 
<select name="search_text[]">
<option value="Fiction" selected>Comedy</option>
<option value="Non-Fiction">Drama</option>
</select>
<input type="submit" name="search_button" value="search" /></form>

//search queries from multiple select/input fields in form 
$input = array(
"search_text" => $_REQUEST['search_text'],);
$sgenre = $input['search_text'][0];
$scategory = $input['search_text'][1];

现在我需要弄清楚如何更改下面的代码(这是有效的,但只有当html表单只有一个名为search_text的输入文本框时。我如何让下面的代码接受我用上面的代码带到页面上的多个值?

$query = "SELECT * FROM stories";
if(isset($_REQUEST["search_text"]) && $_REQUEST["search_text"] != "")
{
$search = htmlspecialchars($_REQUEST["search_text"]);
$pagination->param = "&search=$search";
$query .= " WHERE stories.genre LIKE '%$search%'";
}
$pagination->rowCount($query);
$pagination->config(3, 5);
$query .= " ORDER BY SID ASC LIMIT {$pagination->start_row}, 
{$pagination->max_rows}";

也许有类似的东西

$query = "SELECT * FROM stories";
if(isset($_REQUEST["search_text"]) && $_REQUEST["search_text"] != "")
{
$search = htmlspecialchars($_REQUEST["search_text"]);
$genre =  htmlspecialchars($_REQUEST["search_text"][0]);
$category = htmlspecialchars($_REQUEST["search_text"][1]);
$pagination->param = "&search=$search";
$query .= " WHERE stories.genre LIKE '%$search%'";
$query .= " AND stores.genre LIKE '%$category'";
}