2

我对 javascript 不是很熟悉,尤其是在函数和 ajax 方面。我正在尝试从另一个 php 页面获取一些数据并将其放入 div 中。当我加载页面时,什么都没有出现。

我的最终目标是将数据转换为 php 或 javascript,但首先需要弄清楚如何获取/接收数据。

这是 feedupdate.php 的 php 代码

    <?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']
    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'];
    echo json_encode($updateid);
     break;          
?>

这是ajax

<div id="datacheck"></div>

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

        });
  }); // document ready
4

3 回答 3

2

ajax jquery代码中有错字

成功:功能(味精){...

它应该拼写为“function”。这个错字可能是问题所在,另外应该有 switch case

获取状态

在你的 php 代码中。

于 2013-07-21T18:22:35.557 回答
1

您正在getState从 JavaScript 传递数据,而在 PHP 中,您没有类似的情况来匹配switch语句。而不是getState通过updateinitiate

如果您只想检查 AJAX 调用是否有效

echo "something message"; exit();
于 2013-07-21T18:10:18.127 回答
1

在您的 AJAX 中,您将数据传递回 PHP 脚本:

data: {'function': 'getState'},

但是在您的 php 脚本中,您没有与getState您只有initiateand匹配的 case 语句update。因此,您可以编写代码来支持getState,也可以传入其中一个initiate或传入updatedata 参数。

还要注意尾随的逗号。他们不会在 IE 中工作。您应该删除'getState'数据行后面的逗号。

type在,url和之后还缺少逗号datatype

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

        });
  });

你可以看看使用速记方法$.post docs

于 2013-07-21T18:02:45.977 回答