Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用多个选择元素中的值创建搜索?_Php_Search_Search Engine - Fatal编程技术网

Php 使用多个选择元素中的值创建搜索?

Php 使用多个选择元素中的值创建搜索?,php,search,search-engine,Php,Search,Search Engine,我在PHP中工作(使用Symfony框架),我想基于从多个选择元素中选择的多个值创建一个搜索, i、 e对于类似国家、城市、年龄等,将有多个选择下拉元素。。 其中的值将查询数据表并给出所需的搜索输出。(并非所有值都是强制性的,将使用至少一个值)。 这个想法也行。我使用Symfony作为框架,所以我的代码是这样的 在行动上, $values=$this->form->getValues(); $nation=$values['nation']; $township=$values['t

我在PHP中工作(使用Symfony框架),我想基于从多个选择元素中选择的多个值创建一个搜索, i、 e对于类似国家、城市、年龄等,将有多个选择下拉元素。。 其中的值将查询数据表并给出所需的搜索输出。(并非所有值都是强制性的,将使用至少一个值)。
这个想法也行。

我使用Symfony作为框架,所以我的代码是这样的

在行动上,

$values=$this->form->getValues();
$nation=$values['nation'];
$township=$values['township'];
$job=$values['job'];
$programming_language_known=$values['programming_language_known'];
if($nation != null || $township != null || $job != null || $programming_language_known != null){
//calling the function 
$this->search_data=Jobs::jobSearch(...parameter's here...);  
}else{ // search_data = null }
模型中

public static function jobSearch($nation=null, $township=null, $job=null, $programming_language=null)
{
   $c=new Criteria();
   if($nation != null)
   {
      $c->addAnd(JobsPeer::NATION,$nation);
   } 
   if($township != null)
   {
      $c->addAnd(JobsPeer::TOWNSHIP,$township);
   }
   if($job != null)
   {
      $c->addAnd(JobsPeer::JOB,$job);
   }  
   if($programming_language != null)
   {
      $c->addAnd(JobsPeer::LANGUAGE,$programming_language);
   }
   $jobs=JobsPeer::doSelect($c);
   return $jobs;
}
它现在起作用了,但我不知道这是不是一个好的逻辑