В принципе, я хочу получить массив с t.php и предупредить его с помощью JavaScript с ответом t.php.
Проблема в том, что переменная не существует в этом файле ... Итак, как вы можете передать эту переменную в JS?
Я попытался с 'возвращением':
return $sqlData = $q->query_array_assoc();
Но не работаю.
Вот мой $ .ajax код:
<script type="text/javascript">
$(document).ready(function(){
$('#brand').change(function(e){
console.log(e);
$.ajax({
method: "GET",
url: "t.php",
data: { type: 1, brand: this.value }
})
.done(function(msg){
$('#debug').html(msg);
var pArray = <?php echo json_encode($sqlData);?>
for (var i = 0; i < pArray.length; i++) {
alert(pArray[i]);
};
});
});
</script>
Примечание: Я послал
data: { type: 1, brand: this.value }
Для проверки переключателя заявление в файле .php, но не проблема с этим. Я получаю данные из базы данных и выборки в переменной $sqlData;
Таким образом, массив содержит данные, проблема получить его с $.ajax
не представляется возможным. HTTP ничего не знает о php-структурах, он только «байты». php-массив в таком куске байтов будет буквальным словом «Array». вам необходимо сериализовать/закодировать массив. для JS самым простым методом является 'json_encode()'. и обратите внимание, что ваш фрагмент php в JS-коде бессмыслен. что PHP выполняет ** ONCE ** при создании страницы и никогда больше. –
Кроме того, вы должны использовать «echo» или «print» вместо «return» в «t.php» для возврата некоторого результата для вашего js =) – liding
Итак, как ... Как вы можете сделать вложенный выбор с помощью запрос MySQL? У вас есть идея, как? – wwwanaya