【问题标题】:Ajax MSSQL query using json and php returns undefined array使用 json 和 php 的 Ajax MSSQL 查询返回未定义的数组
【发布时间】:2015-06-26 10:46:44
【问题描述】:

我在提醒时遇到问题(data[i].name)。即使返回数组,结果也是未定义的。谁知道问题出在哪里?

这是我的 Javascript

    $('#plus').click(function(){
    $.ajax({
        type : 'POST',
        url : 'jqueryDBactionview.php',
        dataType : 'json',
        data: { },
        success: function( data){
            $.each( data, function(i, item) {
                alert( data[i].name);
            });
        }
    });
});

这是我的 php

$query = "SELECT TOP (1) * ";
$query .= "FROM maillist WHERE bolag = 'FAL'";
$results = mssql_query($query);
$result = array();
while($row = mssql_fetch_array($results))
{
  $result[] = array(
          'id' => $row['id'],
          'company' => $row['company'],
          'name' => $row['name'],
          'mail' => $row['mail']
       );
}
echo json_encode($result);

【问题讨论】:

  • 你有 data: { } 空...
  • 请查看我的回答

标签: php sql-server ajax json


【解决方案1】:

请使用 JSON.parse(data) 转换您的 json 编码结果,然后在您的每个循环中使用它

【讨论】:

  • data {} 用于发送带有Ajax请求的post变量,为空,但是data是success函数的参数,所以Mysql $result返回的任何值都会传递给data参数功能
  • 为什么要用post ???应该是get方法,提问者不会向服务器发布任何东西
  • 而且我希望我的 sql 查询也不是很好的格式,我从不使用 php,但以标准方式它似乎是错误的
猜你喜欢
  • 2015-10-20
  • 1970-01-01
  • 2021-06-22
  • 2022-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-18
  • 1970-01-01
相关资源
最近更新 更多