加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 简单的Ajax Jquery脚本 – 如何获取表中每一行的信息?

发布时间:2020-12-13 18:22:43 所属栏目:PHP教程 来源:网络整理
导读:我正在关注一个简??单的ajax php这里发布的 mysql示例 http://openenergymonitor.org/emon/node/107 我只能显示第一行的信息. 我的桌子是这样设置的 --------------| id | name|--------------| 1 | Pat || 2 | Joe || 3 | Rob |-------------- PHP代码 $res
我正在关注一个简??单的ajax> php>这里发布的 mysql示例 http://openenergymonitor.org/emon/node/107

我只能显示第一行的信息.
我的桌子是这样设置的

--------------
|  id  | name|
--------------
| 1    | Pat |
| 2    | Joe |
| 3    | Rob |
--------------

PHP代码

$result = mysql_query("SELECT * FROM $tableName");          //query
 $array = mysql_fetch_row($result);                          //fetch result  
 echo json_encode($array);

剧本

$(function () 
  {
    $.ajax({                                      
      url: 'api.php',data: "",dataType: 'json',success: function(data)        
      { 
        var id = data[0];              //get id
        var vname = data[1];           //get name
         $('#output').html("<b>id: </b>"+id+"<b> name: </b>"+vname); 
      } 
    });
  });

行1

如果我把var id = data [0];我得到的值是1.
如果我把var name = data [1];我得到帕特.

ROWS 2 n 3未定义

示例var id = data [2];返回undefined
等等

我的问题

>为什么我只从第一行获取值?
>如何获取第一行以外的行的信息?

从Stackoverflow上的其他问题我看到我可能不得不使用while循环,但我不确定为什么或如何.

旧的MySQL扩展mysql已经过时了,最好使用mysqli或PDO!

mysql_fetch_row()只返回1行!
你必须把它放到一个循环中,例如:

$data = array();
while ( $row = mysql_fetch_row($result) )
{
  $data[] = $row;
}
echo json_encode( $data );

您还必须更改JavaScript:

$.ajax({                                      
  url: 'api.php',success: function(rows)        
  {
    for (var i in rows)
    {
      var row = rows[i];          

      var id = row[0];
      var vname = row[1];
      $('#output').append("<b>id: </b>"+id+"<b> name: </b>"+vname)
                  .append("<hr />");
    } 
  } 
});

顺便说一下,我建议你使用mysql_fetch_assoc(),因为它使你的代码更灵活,更清洁.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读