2012-01-19 20 views
0

私は、結果セットを書式設定するためにjson_encode()を使用して、MySQL結果セットを返す$ .getJSONを使用してPHPページ(外部サイトではありません)を照会しています。 JSON文字列問題はデータを取得することですが、一部の非表示フィールドの値を設定しようとすると何も起こりません。私はこれが働いていたが、今はそうではない。私はそれを実現することなく何かを変えたにちがいない。.getJSON .each()JSONデータを解析しない

のjQuery:ここにコードだ

$.getJSON('includes/Lookup.php', {locationType:$('#location').val()}, function(data) { 

var valA = $('#valA'); 
var valB = $('#valB'); 
var valC = $('#valC'); 

$.each(data, function(index, data) { 
    valA.val(data.field_valueA); 
    valB.val(data.field_valueB); 
    valC.val(data.field_valueC); 
}); 
}); 

Lookup.php:

<?php 
$db = new MySqlDB(); 

if(!$db) { 
// Show error if we cannot connect. 
echo 'ERROR: Could not connect to the database.'; 
} else { 

if(isset($_GET['locationType'])){ 

    $locationType = $_GET['locationType']; 
    $db->where('id', $locationType); 

    $sql = "SELECT field_valueA, field_valueB, field_valueC FROM table"; 
    $results = $db->query($sql); 

    echo json_encode($results); 

} else { 
    echo 'not set'; 
} 
} 

は、これは私がFirebugの中で得るものです:

<??> {"field_valueA":2,"field_valueB":3.12,"field_valueC":12345} 

なぜ<??>私にはわかりません含まれています。私は2つの異なるテーブルの上に、2つの異なる場所で、この正確なコールをやっていないのです(どちらも働いている)これは私が他の呼び出しから取得していますものです:誰もが私に何が起こっているかのようなアイデアを持っている場合

<??> [{"field_valueA":905,"field_valueB":18.180000305176,"field_valueC":16453}] 

それを感謝します。

EDIT:アプリケーション全体のすべてのAjaxレスポンスに接頭辞<??>が付いているようです。彼らはすべて前に働いていましたが、私は何が起こっているのか分かりません。

+0

「なぜ私は含まれているのかわかりません」何??あなたの質問は特に明確ではありません。 – Jere

+0

私はOPがなぜサーバーから送信された応答に ''があるのか​​と質問していると思います。 – BNL

+0

ああ...私は分かりませんでした。私はそれがちょうどコンソールとして意図されていると思った。 – Jere

答えて

1

解決しようあなたのケースで反復する

valA.val(data.field_valueA); 
valB.val(data.field_valueB); 
valC.val(data.field_valueC); 

必要はありませんを行ういけない理由です!私は自分のコードに入力ミスがあったと言って恥ずかしいです。余分なものを逃すのはとても簡単です<?。あなたの提案をありがとう。

+0

で問題を解決したことがありますか?この問題を解決済みとしてマークするには、この回答のチェックマークをクリックするか、問題の解決に役立つと思われる別の回答をクリックします。 – RedRiderX

+0

Thanks Redrider。私はそれをします。 –

1

あなたのPHPは、最後にクローズphpタグ?>を見逃しているようです。たぶん、それはそれは...奇妙な演技

0

は、なぜあなたは、単に

+0

あなたは正しいです、反復する必要はありませんが、それでも動作しません。私のJSONは有効ですか?私が提供した例は、括弧で囲まれたものとないものとでは異なっています。 –

+0

はいjsonは正しいです。http://jsonlint.com/ – Rafay