Почему Jquery не находит мой вложенный массив json_encoded ()? - PullRequest
0 голосов
/ 02 марта 2020

Вот мои PHP и Jquery: https://pastebin.com/ZCay6A55

Проблема в том, что мой Jquery ожидает JSON результата от PHP. В PHP я создал вложенный массив, который затем используется json_encode (). Проблема заключается в том, что при получении оповещения о результате я не получаю результата.

Если я изменю Jquery так, чтобы закомментировать dataType: "JSON", я смогу получить успешное оповещение с правильным данные (хотя я не уверен, что формат правильный).

Так что мой PHP пытается создать массив JSON вложенного массива, но если для Jquery задано ожидание JSON массив, кажется, не находит результат. Если Jquery не установлен для ожидания массива JSON (AKA, если я удаляю данные: "JSON"), он находит результат. Я думаю, что мой PHP как-то не кодирует мой вложенный массив в JSON правильно ...

$i=0; //array index
while ($row = mysqli_fetch_assoc($findservice)) {
        $resultarray[$i] = array(
            'bn' => $row['bn'],
            'bd' => $row['bd']
        );
        $i++;
    }
    $jsonarray = json_encode($resultarray);
    echo $jsonarray;

----------------------------
$.post({
    url:"/search.php",
    processData:false,  //do not convert form to string
    contentType:false,  //FormData is designed to send only by multipart/form-data
    //dataType: "JSON",    //I get a result if this line is commented out. if not commented, I get no alert.
    data:form,
    success:function(data){
        alert(data);
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...