При нажатии на кнопку на главной странице срабатывает код JS
function char_db(sub, char){ //выдаем разделы
if( (sub == 1) || (sub == 2) || (sub == 3) ) {
$.ajax({
type: "POST",
url: "/char",
data: {asub: sub},
success:function (text) {
for(i = 0; i < text.length; i++){
$('.charter_i').find('ul').append('<li data="'+ text[i]['id'] + '">' + (i+1) + '. ' + text[i]['name'] +'</li>');
}
show_charter(char);
}
}).fail(function () {
console.log('fail');
});
} else {
return;
}
}
Этот AJAX запрос попадает на фнукцию в MainController
class MainController
{
public static function actionIndexcmain(){
$char = intval($_POST['asub']);
$chars = Main::getChars($char);
return $chars;
}
}
Класс main получает из бд всю нужную инфу.
class Main{
public static function getChars($char){
$db = Db::getConnection();
$charList = array();
$result = $db->query( "SELECT * FROM charter WHERE sub = ". $char);
$i = 0;
while($row=$result->fetch()){
$charList[$i]['id'] = $row['id'];
$charList[$i]['name'] = $row['name'];
$i++;
}
return $charList;
}
}
В итоге сформированный в контроллере массив $chars отправляется (но главный вопрос - куда
отправляется и как им воспользоваться?) в инструментах разработчика Network наблюдаю нужный
массив, однако воспользоваться им не могу. Предпросмотр ответа в инструментах разработчика выглядит:
array(4) { [0]=> array(2) { ["id"]=> string(1) "1" ["name"]=> string(16) "Геология" } [1]=> array(2) { ["id"]=> string(1) "2" ["name"]=> string(16) "Экология" } [2]=> array(2) { ["id"]=> string(1) "3" ["Гидрология"]=> string(16) "Анатомия" } [3]=> array(2) { ["id"]=> string(1) "4" ["name"]=> string(27) "Общая минералогия" } }