2015-08-03 2 views
-1

У меня есть многомерный ассоциативный массив из таблицы тузда следующим образом:преобразования PHP многомерного ассоциативный массив JSON

$i = 0; 
$data = array(); 
while($row = $result->fetch_array(MYSQLI_ASSOC)) { 
$arr = array(); 
$arr['id'] = $i; 
$arr['code'] = $row['code']; 
$arr['name'] = $row['name']; 
$data[$i] = $arr; 
$i++; 
} 

Я хотел бы преобразовать этот массив JSON данного скриптом

var data = <?php echo json_encode($data, JSON_PRETTY_PRINT) ?>; 

но есть 'n нет ответа, поэтому я попробовал с этим скриптом

var data = <?php echo json_encode($data) ?>; 

Оба этих сценария не являются g ив правильного результата

поэтому я попробовал другие способы со следующим сценарием для того, чтобы сгенерировать строку переменные, которая будет содействовать мои новообращенный его JSon

$i = 0; 
$data = '['; 
while($row = $result->fetch_array(MYSQLI_ASSOC)) { 
if ($data != "[") {$data .= ",";} 
$data .= '{"id":"' . $i . '",'; 
$data .= '"code":"' . $row["code"] . '",'; 
$data .= '"name":"' . $row["name"] . '"}'; 
$i++; 
} 
$data .="]"; 

Затем я перейти к JSon с этим скриптом:

var data = <?php echo $data ?>; 

результат по-прежнему неправильно

есть какие-либо предложения по улучшению для меня, спасибо

+2

Пожалуйста [править] Ваш вопрос, чтобы включить плохой JSON быть выплюнул. Спасибо за улучшение ссылочного значения вопроса и привлечение его к ответственности! –

ответ

0

попробуйте предоставить заголовок, прежде чем вы вернете свой массив json. Просто перед кодированием ваш JSON добавить деталь header('Content-Type: application/json'); Таким образом, вы можете передать данные в виде $ JSON в браузер

header('Content-Type: application/json'); 
echo json_encode(array('success' => TRUE, 'data' => $data)); 
+0

Спасибо, проблема решена –

Смежные вопросы