Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.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
关于cakephp 2.0中按顺序分页_Php_Cakephp 2.0 - Fatal编程技术网

关于cakephp 2.0中按顺序分页

关于cakephp 2.0中按顺序分页,php,cakephp-2.0,Php,Cakephp 2.0,如何使用不同的模型处理订单。例如,我有一个CareseekerJob模型,它与城市、州、类别和用户模型关联(belongsTO)。我正在进行搜索,并希望按照价格对作业进行排序,但默认情况下,它会对作业表进行分页 请参阅代码:- $searchdata=array(); $conditioncat=''; $conditionsearch='' 如果(!empty($categories)&&$categories!='-1') { $conditioncat='CareseekerJob.cat

如何使用不同的模型处理订单。例如,我有一个CareseekerJob模型,它与城市、州、类别和用户模型关联(belongsTO)。我正在进行搜索,并希望按照价格对作业进行排序,但默认情况下,它会对作业表进行分页

请参阅代码:- $searchdata=array(); $conditioncat=''; $conditionsearch=''
如果(!empty($categories)&&$categories!='-1') { $conditioncat='CareseekerJob.category_id IN('.$categories.'); } 如果($categories=='-1') { $conditionserv='(1=1)'; } $conditionserv=''; 如果(!empty($services)&&$services!='-1') {

                  $serviceses = explode(',',$services);
                  $servicename = '';
                  $con = '(1 = 1) AND '; $i='0';
                  $servicename = '';
                  foreach($serviceses as $key=>$value)
                  { $i++;
                     $servicedata =  $this->Service->find('first',array('conditions'=>array('Service.id'=>$value)));
                     $servicename = $servicedata['Service']['name'];
                     $con .= '(CareseekerJob.services LIKE "%'.$servicename.'%")' ;
                     if(count($serviceses) == $i){
                         $con .= ' ';
                     }else{
                     $con .= ' OR ';
                     }
                  }

                  $conditionserv = $con;

              }
              if($services == '-1')
                    {
                       $conditionserv = '(1 = 1) ';
                    }
              $conditiontime = '';

              if($timingess != '1')
              {

                      $start = '';
                    $end = '';
                    if($timingess == 'morning')
                    {
                       $start = date('H:i:s',strtotime('00:00:00'));
                       $end = date('H:i:s',strtotime('11:59:00'));
                    }
                    elseif($timingess == 'afternoon')
                    {
                        $start = date('H:i:s',strtotime('11:59:00'));
                        $end = date('H:i:s',strtotime('16:00:00'));
                    }
                    elseif($timingess == 'evening')
                    {
                        $start = date('H:i:s',strtotime('16:00:00'));
                        $end = date('H:i:s',strtotime('20:00:00'));
                    }
                    elseif($timingess == 'night')
                    {
                        $start = date('H:i:s',strtotime('20:00:00'));
                        $end = date('H:i:s',strtotime('23:59:00'));
                    }
                    elseif($timingess == 'morning,afternoon')
                    {
                                $start = date('H:i:s',strtotime('00:00:00'));
                                $end = date('H:i:s',strtotime('16:00:00'));

                    }
                    elseif($timingess == 'morning,evening')
                    {
                                $start = date('H:i:s',strtotime('00:00:00'));
                                $end = date('H:i:s',strtotime('20:00:00'));

                    }
                    elseif($timingess == 'morning,afternoon,evening')
                    {
                                $start = date('H:i:s',strtotime('00:00:00'));
                                $end = date('H:i:s',strtotime('20:00:00'));

                    }
                    elseif($timingess == 'morning,afternoon,evening,night')
                    {
                        $start = date('H:i:s',strtotime('00:00:00'));
                        $end = date('H:i:s',strtotime('23:59:00'));

                    }


                       $conditiontime = "( TIME(CareseekerJob.starttime) >= TIME('".$start."') and TIME(CareseekerJob.starttime) <= TIME('".$end."') ) ";

              }
               if($timingess == '1')
                    {
                       $conditiontime = '(1 = 1) ';
                    }
                    $conditionsearch = "";
                   $conditionZip = "";
                            if($searchtext != 1)
                            {
                                if(is_numeric($searchtext))
                                {
                                    $url1 = "https://maps.googleapis.com/maps/api/geocode/xml?address=" . $searchtext . "&sensor=false";
                                    $details = simplexml_load_file($url1);

                                     if ($details->status == 'OK') {
                                   $sourceLat = $details->result->geometry->location->lat;
                                   $sourceLon = $details->result->geometry->location->lng;
                                   $radiusKm = 160.934;
                                   $proximity = $this->Radiussearch->mathGeoProximity($sourceLat, $sourceLon, $radiusKm);
                                   $latmin=min($proximity["latitudeMin"],$proximity["latitudeMax"]);
                                   $latmax=max($proximity["latitudeMin"],$proximity["latitudeMax"]);
                                   $lonmin=min($proximity["longitudeMin"],$proximity["longitudeMax"]);
                                   $lonmax=max($proximity["longitudeMin"],$proximity["longitudeMax"]);          
                                   $conditionZip=array("CareseekerJob.lat BETWEEN ? AND ?" => array(number_format(min($proximity["latitudeMin"],$proximity["latitudeMax"]), 12, ".", ""), number_format(max($proximity["latitudeMin"],$proximity["latitudeMax"]), 12, ".", "")),"CareseekerJob.long BETWEEN ? AND ?"=> array(number_format(max($proximity["longitudeMin"],$proximity["longitudeMax"]), 12, ".", ""),number_format(min($proximity["longitudeMin"],$proximity["longitudeMax"]), 12, ".", "")));

                                    }
                                    $conditionsearch = '(1 = 1)';  
                                }
                                  else{   
                                      $conditionsearch= array('OR'=>array('CareseekerJob.title LIKE'=>'%'.$searchtext.'%','CareseekerJob.zipcode'=>$searchtext));       
                                }

                            }else{
                                $conditionZip = '(1 = 1)';
                                $conditionsearch = '(1 = 1)';  
                            }



    if($sort =='recent' )
            {

                    $condition= array('CareseekerJob.job_status'=>'jobactive','CareseekerJob.is_deleted'=>0,'CareseekerJob.status'=>'active');
                    $this->paginate = array(
                                      'conditions' => array('AND'=>array($condition,$conditioncat,$conditiontime,$conditionserv,$conditionsearch,$conditionZip)),
                                      'limit' => 4,
                                      'order' => array(
                                          'CareseekerJob.id' => 'desc'
                                      )
                                  ); 
                     $searchdata = $this->paginate('CareseekerJob');
            }
    elseif($sort =='distance' )
            {

                   $condition= array('CareseekerJob.job_status'=>'jobactive','CareseekerJob.is_deleted'=>0,'CareseekerJob.status'=>'active');

                   $this->paginate = array(
                                       'conditions' => array('AND'=>array($condition,$conditioncat,$conditiontime,$conditionserv,$conditionsearch,$conditionZip)),
                                      'limit' => 4,
                                      'order' => array(
                                          'CareseekerJob.lat' => 'desc'
                                      ),

                                  );

                      $searchdata = $this->paginate('CareseekerJob');
            }elseif($sort =='price')
            {

                        $condition= array('CareseekerJob.job_status'=>'jobactive','CareseekerJob.is_deleted'=>0,'CareseekerJob.status'=>'active');

                        $this->paginate = array(
                                      'conditions' => array('AND'=>array($condition,$conditioncat,$conditiontime,$conditionserv,$conditionsearch,$conditionZip)),
                                      'limit' => 4,
                                      'order' => array(
                                          'CareseekerJob.rate' => 'desc'
                                      )

                                  );
                      $searchdata = $this->paginate('CareseekerJob');
            }
$services=explode(',',$services);
$servicename='';
$con='(1=1)和“;$i='0';
$servicename='';
foreach($key=>$value的服务)
{$i++;
$servicedata=$this->Service->find('first',array('conditions'=>array('Service.id'=>$value));
$servicename=$servicedata['Service']['name'];
$con.='(CareseekerJob.services,如“%”.$servicename.“%”);
如果(计数($serviceses)=$i){
$con.='';
}否则{
$con.='或';
}
}
$conditionserv=$con;
}
如果($services=='-1')
{
$conditionserv='(1=1)';
}
$conditiontime='';
如果($timinges!=“1”)
{
$start='';
$end='';
如果($timinges=='morning')
{
$start=date('H:i:s',strottime('00:00:00');
$end=日期('H:i:s',标准时间('11:59:00');
}
elseif($timingess=='午后')
{
$start=date('H:i:s',strottime('11:59:00');
$end=日期('H:i:s',标准时间('16:00:00');
}
elseif($timinges==‘晚上’)
{
$start=date('H:i:s',strottime('16:00:00');
$end=日期('H:i:s',标准时间('20:00:00');
}
elseif($timingess=='night')
{
$start=日期('H:i:s',标准时间('20:00:00');
$end=日期('H:i:s',标准时间('23:59:00');
}
elseif($timinges==‘上午,下午’)
{
$start=date('H:i:s',strottime('00:00:00');
$end=日期('H:i:s',标准时间('16:00:00');
}
elseif($timinges==‘早,晚’)
{
$start=date('H:i:s',strottime('00:00:00');
$end=日期('H:i:s',标准时间('20:00:00');
}
elseif($Timinges==‘上午、下午、晚上’)
{
$start=date('H:i:s',strottime('00:00:00');
$end=日期('H:i:s',标准时间('20:00:00');
}
elseif($Timinges==‘早上、下午、晚上、晚上’)
{
$start=date('H:i:s',strottime('00:00:00');
$end=日期('H:i:s',标准时间('23:59:00');
}

$conditiontime=“(TIME(CareseekerJob.starttime)>=TIME(“$start.”)和TIME(CareseekerJob.starttime)一些代码确实会有帮助……但是
rate
是求职者表中的一个字段还是另一个表中的一个字段?是,rate是求职者表中的一个字段