Возвращение объекта JSON из PHP в вызове AJAX?

Вот мой код PHP, который вызывается во время вызова jQuery AJAX:

<?php
    include '../code_files/conn.php';
    $conn = new Connection();
    $query = 'SELECT Address_1, Address_2, City, State, OfficePhone1, OfficePhone2, Fax1, Fax2, Email_1, Email_2 
              FROM clients WHERE ID = ?';
    $conn->mysqli->stmt_init();
    $stmt = $conn->mysqli->prepare($query);
    $stmt->bind_param('s', $_POST['ID']);
    $stmt->execute();
    $result = $stmt->get_result();
    $row = $result->fetch_assoc();
    echo json_encode($row);
?>

И код на стороне клиента:

$.post(url, {ID:$('#ddlClients').val()},
        function(Result){
            // Result
        }
      );

Вызов AJAX успешно завершенный. Я получаю значение Результат как

"{" Address_1 ":" Divisional Office 1 "," Address_2 ":" The XYZ Road "и так далее

What Я хочу иметь возможность использовать возвращаемые значения, такие как Result.Address_1, Result.Address_2 и т. Д. Но я не могу сделать это с помощью приведенного выше кода. Я попытался использовать $ row = $ result-> fetch_object ( ) и $ row = $ result-> fetch_array () , но бесполезно.

И я знаю, что это можно сделать с помощью этого кода на стороне сервера:

$row = $result->fetch_assoc();
$retVal = array("Address_1"=>$row['Address_1'], "Address_2"=>$row['Address_2'].......);
echo json_encode($retVal);

или

$row = $result->fetch_object();
$retVal = array("Address_1"=>$row->Address_1, "Address_2"=>$row->Address_2.......);
echo json_encode($retVal);

Есть ли способ отправить $ row прямо на клиентский JavaScript и готов к использованию в качестве объекта JSON без предварительного создания массива вручную?

7
задан Lightness Races with Monica 27 December 2011 в 21:52
поделиться