2011-12-05 56 views
1

我有一個數據傳遞到PHP的AJAX代碼,然後檢索從PHP數據資料...檢索用ajax從PHP

function updateDatabase(syncData){ 
    $.ajax({ 
      type : 'POST', 
      async: false, 
      url : 'php/syncData.php', 
      dataType : 'json', 
      data: {myData : syncData}, //i even used this "mydata"+syncData 
      success : function(result){ 
       res = result;        
      }, 
      error : function() { 
       res = false; 
      } 
    }); 

    return res; 
} 

這是我的PHP代碼...

<?php 

    include("database.php"); 

    if(isset($_GET['myData'])){ 
     $data = $_GET['myData']; 

     $insert = "INSERT INTO `mydata` VALUES (NULL,'$data')"; 
     mysql_query($insert); 


     $data = mysql_insert_id(); 
     echo json_encode($data); 

} 

?> 

下面是通過javascript函數/調用AJAX ...

<script> 

var theData = "blahblah"; 
var alertData = updateDatabase(theData); 

alert(alertData); 

</script> 

的問題是,當我使用HTMT /文本數據鍵入提醒空/ BLA nk輸出,但是當我使用json作爲數據類型時,它警告虛假的地方,我認爲它去錯誤功能不成功...任何人都知道什麼是正確的方法來做到這一點?或者我只是想念一些東西?謝謝!

+1

你看過使用螢火蟲的ajax響應嗎? –

回答

4

那麼,你使用jQuery發佈數據,但你正在尋找$_GET值在PHP中。解決這個問題,看看它是否改變了一切。

編輯:應該是這樣的:

... 
    if(isset($_POST['myData'])){ 
     $data = $_POST['myData']; 
... 
+0

+1爲好捕獲。 :) –

0

嘗試設置內容類型在你的PHP文件:

header('Content-Type: application/json'); 

然後回顯數據:

echo json_encode($data); 

然後退出腳本:

exit; 

希望它有幫助!