Ajax-запрос не выполняется в Meteor, но в тесте localhost он верен

Я пытаюсь получить некоторые данные из моей базы данных MySql. У меня есть 2 файла:

// client/book.js
$(document).ready(function () {
$("#btnJSonDB").bind("click", function () {

var request = $.ajax({
url: "book.php",
type: "GET",
data: "",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(result) {
console.log(result);
}
}); //end ajax
request.fail(function( jqXHR, textStatus ) {
console.log("Request failed: " + textStatus);
});
}); //end click
}); //end ready

и на стороне сервера:

// server/book.php
$db = new mysqli(DATA_HOST,DATA_UTENTE,DATA_PASS,DATA_DB );
$select = "SELECT * FROM bk_book";
$strJSon = "{\"book\":{}}";
$query = @mysqli_query($db,$select);
if( $query )  {
$result = [];
while($result[] = mysqli_fetch_array($query, MYSQLI_ASSOC));
@mysqli_close($db);
$strJSon = "{\"book\":" . json_encode($result) . "}";
}
echo $strJSon;

Я пытаюсь в моем локальном пространстве (windows-xampp) и все в порядке, В метеоре я получаю сообщение об ошибке:

Parse error

Я пытаюсь комментировать тип данных (проблема с JSON?) И вижу HTML-страницу без моих данных.

Результат — правильный формат JSON:

{
"book":[
{
"nrent":"xxxxxx",
"start_date":"2017-01-05",
"end_date":"2017-01-12",
"user_ID":"15",
"booking_status":"estimate",
"note":"",
"adults_numb":"0",
"children_numb":"0",
"booking_bill":"630.00",
"name":"Camera Bi",
"first_name":"dddd",
"last_name":"ddd",
"mail":"[email protected]",
"telephone":"ddddddd"},
{
"nrent":"fffff",
"start_date":"2017-01-08",
"end_date":"2017-01-27",
"user_ID":"25",
"booking_status":"active",
"note":"",
"adults_numb":"2",
"children_numb":"0",
"booking_bill":"1710.00",
"name":"Camera Ba",
"first_name":"pippo",
"last_name":"puppo",
"mail":"[email protected]",
"telephone":"ffffff"},
{
"nrent":"aaaaa",
"start_date":"2017-01-28",
"end_date":"2017-02-01",
"user_ID":"24",
"booking_status":"estimate",
"note":"",
"adults_numb":"0",
"children_numb":"0",
"booking_bill":"380.00",
"name":"Camera Ba",
"first_name":"ffff",
"last_name":"wwww",
"mail":"[email protected]",
"telephone":""},
null
]
}

Я пробую https://jsonformatter.curiousconcept.com/ и правильно

0

Решение

$db = new mysqli(DATA_HOST,DATA_UTENTE,DATA_PASS,DATA_DB );
$select = "SELECT * FROM bk_book";
$jsonObject = new stdclass();

$query = @mysqli_query($db,$select);
if( $query )  {
$result = [];
while($result[] = mysqli_fetch_array($query, MYSQLI_ASSOC));
@mysqli_close($db);
$jsonObject->book = $result;
}
header("Content-Type: application/json; charset=utf-8", true);
echo json_encode($jsonObject);
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]