2013-07-22 62 views
0

我嘗試讓AJAX發佈到一個單獨的php文件,然後將該數據放入div。最終目標將是建立一個長期的自動更新調查,但寶貝步驟。AJAX沒有數據顯示從服務器請求

因此,當頁面加載時沒有顯示在div中。我檢查了控制檯,並且ajax確實發送了'啓動'POST,但它似乎沒有收到任何回報,除了標題。

FIXED我整個時間都在想念花括號。感謝所有的語法幫助傢伙。

這裏是代碼,Ajax調用

<?php 
require "dbc.php"; 

    $function = $_POST['function']; 



    switch($function) 
    case('initiate'): 
    $search="SELECT * FROM Feedtest ORDER BY id DESC"; 
    $request = mysql_query($search); 
    $mostrecent= mysql_fetch_array($request); 
    $mostrecentid = $mostrecent['id']; 
    header("Content-type: application/json"); 
    echo json_encode($mostrecentid); 
    break; 


    case('update'): 
    $search="SELECT * FROM Feedtest ORDER BY id DESC"; 
    $request = mysql_query($search); 
    $update= mysql_fetch_array($request); 
    $updateid = $update['id']; 
    header("Content-type: application/json"); 
    echo json_encode($updateid); 
    break;   
?> 

其中呼叫由

<div id="datacheck"></div> 
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> 

    <script> 
    $(document).ready(function() { 
    $.ajax({ 
      type: 'POST', 
      url: 'feedupdate.php', 
      data: {function: 'initiate'}, 
      dataType: "json", 
      success: function(msg) { 
       $('#datacheck').html(msg); 
      } 

     }); 
    }); // document ready 

</script> 
+0

數據:{功能: '開始'}, –

+0

沒有撇號的功能? – user2444298

+0

是和逗號最後 –

回答

4

你忘了,這裏

data: {function: 'initiate'}, // here 
datatype: "json", 

php文件也

'function': 'initiate' 

應該

function: 'initiate' 

功能被保留在JavaScript的話,那麼您需要更改到其他名字爲好。

+0

確定這個錯誤消失了,但還是沒有迴應。 – user2444298

+0

使用'error:function(msg)'查看錯誤。 –

+0

沒有錯誤顯示?那麼也許它的HTML? – user2444298

0

「json」:將響應評估爲JSON並返回一個JavaScript對象。 JSON數據嚴格分析;任何格式不正確的JSON都會被拒絕並引發解析錯誤。從jQuery 1.9開始,一個空的響應也被拒絕;服務器應該返回null或{}的響應。 (有關正確的JSON格式的詳細信息,請參閱json.org。)

你錯過了,

data: {function: 'initiate'}, 
datatype: "json", 
+0

確定響應不是空的我檢查了它應該是4但沒有任何反應。 – user2444298

+0

讓我看看你的迴應,例如,你的回答看起來像這樣{'test':'test val'},那麼你可以得到值爲msg.test。 – sudhakar

+0

查看控制檯時,它們都只是響應標題,但查詢應返回4。 – user2444298