Сообщение от laimas
|
Цель запроса сервера?
|
$.getJSON(get_all_project_url,req_rez,function(data){
getprog_json(data,error);
}
сервер отдает клиенту массив элементов(проекты)-который формируется исходя выбранного фильтра (параметр req_rez)
На сервере проверяються все возможные варианты запроса ()
else if(Yii::$app->request->get('get_thisday_and_loc')){//day&location
$loc=Yii::$app->request->get('loc');
$rez=$proj->get_all_proj_by_day_and_loc($loc); //запрос к базе данных
}else if(Yii::$app->request->get('alldate_and_loc')){//allday&location
$loc_name=Yii::$app->request->get('loc');
$rez=$proj->get_all_proj_by_location($loc_name);
else if(Yii::$app->request->get('get_thismohth')){//month
$rez=$proj->get_all_proj_by_month();
}/*еще условия*/
}
и в конце,после проверки(по аналогии с кодом на js) отправляем результата клиенту(все то что находиться в переменной
$rez
,предварительно сформировав необходимый массив
foreach($rez as $key){
//формируем массив $this->publish_project_info
}
return json_encode($this->publish_project_info);//отправка данных клиенту
На клиенте js все данные обрабатывает функция
getprog_json(data,error);если в data ничего нет,то выводим сообщение из errror
Понятно что обработка множественных условий требует проверки и на клиенте и на сервере и это не написать в одну строчку.Но все же, вдруг есть другие способы их обработки,более эффективные ..чем мой