Wie verwende ich PHP richtig, um MySQL-Objekte in JSON zu kodieren?

Ich versuche, durch ein MySQL-Objekt zu iterieren und einen Ajax-Aufruf auf einer anderen Seite zu verwenden, um die Daten anzuhängen, aber ich kann das PHP nicht dazu bringen, gültiges JSON an den Rückruf zurückzugeben.

Dieser funktioniert offensichtlich nicht ...

<?php

    $db_host = "localhost";
    $db_user = "blah";
    $db_pass = "blah";
    $db_name = "chat";
    $mysqli = new MySQLi($db_host, $db_user, $db_pass, $db_name);
    $myQuery = "SELECT * FROM users";
    $result = $mysqli->query($myQuery) or die($mysqli->error);
    $row = $result->fetch_assoc();
    echo json_encode($row);

?>

Oder dieses...

<?php

    $db_host = "localhost";
    $db_user = "blah";
    $db_pass = "blah";
    $db_name = "chat";
    $mysqli = new MySQLi($db_host, $db_user, $db_pass, $db_name);
    $myQuery = "SELECT * FROM users";
    $result = $mysqli->query($myQuery) or die($mysqli->error);
    while ( $row = $result->fetch_assoc() ){
        echo json_encode($row) . ", ";
    }

?>

Antworten auf die Frage(3)

Ihre Antwort auf die Frage