Показать сообщение отдельно
  #3 (permalink)  
Старый 23.01.2016, 22:17
Интересующийся
Отправить личное сообщение для greenrow Посмотреть профиль Найти все сообщения от greenrow
 
Регистрация: 22.01.2016
Сообщений: 12

Сообщение от 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

Понятно что обработка множественных условий требует проверки и на клиенте и на сервере и это не написать в одну строчку.Но все же, вдруг есть другие способы их обработки,более эффективные ..чем мой
Ответить с цитированием