JSON encode с консультацией SQL и PHP

Хорошие во все. Этот вопрос уже я увидел ее в нескольких темах, но не понимаю очень довольно каков это проблема, потому что он не вводит результаты в array. Который консультация возвращает оказанные.

Я оставляю код:

function jsonEcho(){
include('conn.php');
$servername = "localhost";


$ttenQ="SELECT `id`, `nombre_cock`, `categoria_fk`, `descripcion`,`Preparacion`, `img_path`, `puntuacion` FROM `def_cockteles`  ORDER BY `puntuacion` DESC LIMIT 10";
$resultado = mysqli_query($conexion,$ttenQ);

$topTen = array();

$rowcount=mysqli_num_rows($resultado);
printf("Result set has %d rows.\n",$rowcount);
while ($row=mysqli_fetch_array($resultado)) {

    $topTen[]=array('ruta'=> $row["img_path"],'descripcion'=>$row["descripcion"]);
}

 return json_encode($topTen);
}

print_r(jsonEcho());

?>

Спасибо заранее

3
задан 11.10.2016, 18:36
4 ответа

Замени return из-за echo и я заношу в список, с этим он покажет тебе json.

echo json_encode($topTen);

типов Привета

1
ответ дан 24.11.2019, 13:08
  • 1
    Совсем не, останься, не возвращая результатов –  RafaelM 13.10.2016, 17:42
  • 2
    Он мне кажется дополнительным и # 241; или, ты уверен, что твоя консультация бросает оказанные? Ты размещал var_dump во всем коде до тех пор, пока он не возвратится оказанные, потому что, если он не показывает это тебе, возможно, что это был возврат, который неправильный, а именно, что у договоренности не было данных, которых было нужно возвращать. Конечно, если ты будешь включать N разы файл, лучше, чтобы ты поместил его include_once, другое, если ты открываешь связь с BD, ты должен закрывать ее. –  Ariel Navarrete 13.10.2016, 19:23

если это делает с ajax , ты должен комментировать эта lГ-nea printf("Result set has %d rows.\n",$rowcount);, и если ты хочешь увидеть результат этой lГ-nea cГіdigo serГ - в хороший, что pogan договоренность tambiГ©n. Когда ты делаешь одна peticiГіn ajax , правильное состоит в том, чтобы sГіlo были напечатаны json_encode. Доказательство было cГіdigo:

$topTen = array();

$rowcount=mysqli_num_rows($resultado);
$topTen['rowcount'] = "Result set has $rowcount rows.\n";
while ($row=mysqli_fetch_array($resultado)) {    
    $topTen['data'][]=array('ruta'=> $row["img_path"],'descripcion'=>$row["descripcion"]);
}
return json_encode($topTen);
0
ответ дан 24.11.2019, 13:08
  • 1
    Останься, не возвращая JSON мне... не, который может происходить. petici и # 243; n я делаю ее с objective-C, даже схвати и # 237; у меня есть браузер JSON и также меня не представляет ничто –  RafaelM 11.10.2016, 18:53
  • 2
    он может показывать мне, что он возвращает тебя? –  Fermin Perdomo 11.10.2016, 18:55
  • 3
    Он не возвращает абсолютно ничего. –  RafaelM 13.10.2016, 17:20

Доказательство устанавливая заголовок Content-Type :

<?php
$data = /** lo que sea que necesitas serializar **/;
header('Content-Type: application/json');
echo json_encode($data);
?>

первоначальный Ответ: https://stackoverflow.com / questions / 4064444/returning-json-from-a-php-script

0
ответ дан 24.11.2019, 13:08

Попытайся:

$topTen = array();
while($row = mysqli_fetch_assoc($resultado)) {
  $topTen[] = $row;
}
print json_encode($topTen);

и сними printf

0
ответ дан 24.11.2019, 13:08