2014-02-13 144 views
0

請任何人都可以幫助我試圖讓我的HTML5本地主機頁面上顯示我的JSON數據,JSON填充用PHP

我還是新來的JSON

我碰到下面的返回,但沒有數據正在加載頁面上。

http://www.hostname/getCheck.php?callback?&callback=jQuery110205560797746881064_1392215061343&_=1392215061344

如有任何人都可以幫助。

下面是我的PHP腳本

`mysql_select_db($database_xxx, $xxx); $rsfet = "SELECT * FROM cs_tracking "; $fet = mysql_query($rsfet, $xxx) or die(mysql_error()); $json = array(); while($r=mysql_fetch_array($fet)){ $json[] = $r; }

header('Access-Control-Allow-Origin: *'); 
echo $callback ='('.json_encode($json).')';` 

and my javascript to display the table data

` 
     $(document).ready(function(){ 
       $.ajax({ 
    url: 'http://xxxxxxxxxxx.com/getCheck.php?callback=?', 
    type: 'GET', 
    contentType: "application/json; charset=utf-8", 
    dataType: "jsonp", 
    jsonp: true, 
    success: function(data){ 
       $.each(data,function(i,photo){ 
       var tblRow ="" 
    +""+data.CS_Track_Child+"" 
    +""+data.CS_Track_Date+"" 
    +""+data.Tracking_Status+"" 
    +""+data.CS_Tracking_ID+"" 
    +"" ; 
    $(tblRow).appendTo("#userdata tbody"); 
    }); 
    },  

    }); 
    });` 

回答

0

The $callback變量沒有奇蹟般地在你的腳本中聲明(至少不應該是);您可以通過訪問$_GET['callback']價值,但一定要清理它的價值:

if (isset($_GET['callback']) && preg_match('/[A-Z]\w*/i', $_GET['callback']) { 
    header('Content-Type: application/javascript'); 
    header('Access-Control-Allow-Origin: *'); 
    printf('%s(%s);', $_GET['callback'], json_encode($json)); 
} 
+0

我試過的代碼和我的PHP腳本生成JSON,未定義每個值我的表顯示。 – user948354

0

你有callback二送參數之一是有效的,但空的,第二個是無效的。

http://www.hostname/getCheck.php?callback?&callback=jQuery110205560797746881064_1392215061343&_=1392215061344

url: 'http://xxxxxxxxxxx.com/getCheck.php?callback=?', 

所以刪除您的參數以及與此嘗試:

url: 'http://xxxxxxxxxxx.com/getCheck.php', 
+0

我發現了這個問題; – user948354

+0

我沒有在表格中調用正確的數據。我用data.CS_Track_Child代替item.CS_Track_Child,我也改變了(我,照片)到(我,項目)謝謝你的所有幫助。 – user948354