オーケー[オブジェクトのオブジェクト]、私はJSONへの初心者くさいのビットです。私はJSONを介して元のフォームに戻って値を返すAJAX呼び出し(PHPのmssqlクエリ)を一緒にcobbleしようとしています。変数の実際の値の代わりに[object Object]
が得られます。いくつかの検索を通じて、私は問題が解析に関連していると思うが、私はjson_encode
がこれを処理したと思った。それとも、そうしていて、これを正しく構成していないかもしれません。AJAXのjson_encode戻っ
はここでイムが達成しようとするものです:口座番号、口座名及び住所1: HTMLフォームは、3つのフィールドがあります。私は、ユーザーが口座番号を入力して、mssqlクエリの結果とぼかしで名前とアドレスフィールドを入力できるようにします。ここで
は、私が持っているものです。 HTML<body>
<label>Account Number:</label><input type="text" id="acctnumber" />
<label>Account Name:</label><input type="text" id="acctname" />
<label>Address 1:</label><input type="text" id="address1" />
</body>
jqueryの(私はテストのためにacctnumber入力値を入れる)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#acctnumber").blur(function(){
$.ajax({
url: "ajaxtestscript.php?acctnumber=hfi01",
dataType: "json", //the return type data is jsonn
success: function(data){ // <--- (data) is in json format
$("#acctname").val(data.Name);
$("#address1").val(data.Address);
//parse the json data
}
});
});
});
</script>
PHP
<?php
header('Content-Type: application/json');
//mssql connection info//
$acctnumber = $_GET["acctnumber"]; // we received this from the json call
//declare the SQL statement that will query the database
$query = "select[description],[daddr1] from trCustomer where company = '$acctnumber' and archived = 0";
//execute the SQL statement and return records
$rs = $conn->execute($query);
$test = array();
$test['Name'] = $rs[description];
$test['Address'] = $rs[daddr1];
echo json_encode($test);
//echo $name.$address; put this in to test the query was working, which it was
//close the connection and recordset objects freeing up resources
$rs->Close();
$conn->Close();
$rs = null;
$conn = null;
?>
私が実際にしてみてくださいこれはhtml形式で、私はアカウント番号の値(この時点でハードコードされている)を入力してクリックします他の2つの入力フィールドでは、[object Object]
が得られます。私はちょうど私のecho
クエリ背中、私はので、私は私が何か間違ったことをしたり、私のjson_encode
で何かを残していると思っていた値を見ることができればけれども。どのような援助は、大幅いただければ幸いです。すべての
もっと分かりやすくするために 'data'を共有する必要があります。 –
あなたが成功機能で、いくつかの警告またはにconsole.logを入れたときに、[オブジェクトオブジェクト]を取得している、と言いますか? –
dataTypeに 'json'を指定すると、phpスクリプトから返される文字列はjsonとして解析され、' data'はjavascriptオブジェクトになります。文字列が有効なjsonの場合...もちろん、内部にあるものを見るには、success関数で 'console.log(data);'を実行することができます。 – jeroen