首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >显示多个字段时出错

显示多个字段时出错
EN

Stack Overflow用户
提问于 2014-10-29 06:57:06
回答 3查看 35关注 0票数 0

请在这方面帮助我,我是初学者。我需要从我的数据库中显示多个字段。但不知何故,这段代码只显示第一行。

代码语言:javascript
运行
复制
 if(mysql_num_rows($result)>0)
{
$output .= "<p>Table: $tbl</p><p>";
// BUG - SHOULD LOOP THRU MULTIPLE rows
$row = mysql_fetch_row($result);
$i = 0;
while ($i < mysql_num_fields($result)) 
{
    //echo "Information for column $i:<br />\n";
    $fieldN = mysql_field_name($result, $i);
    if (!$fieldN) {   $output .= "No info available<br />\n";  }
    if ($row[$i]) {
        $fieldN = mysql_field_name($result, $i);
        if (!$fieldN) {   $fieldN = "No_field_name";  }
        $output .= " $tbl F: $fieldN  V: $row[$i]<br />\n";
    }
    $i++;
 } // end while
  $output .= "</p>";
}  // end if number of rows > 0
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-10-29 06:59:52

在您的代码中,您将使用$row = mysql_fetch_row($result);获取结果,该结果作为数字数组从记录集中只返回一行。

为了获取结果集中的所有记录,您必须使用$row = mysql_fetch_row($result);从结果集中获取每个记录。

尝试使用代码:

代码语言:javascript
运行
复制
while ($row = mysql_fetch_row($result))    //  while there are results
{
  // get each field values inside this loop
} 
票数 0
EN

Stack Overflow用户

发布于 2014-10-29 07:10:01

你可以尝试使用

代码语言:javascript
运行
复制
while ($row = mysqli_fetch_array($result)) {

而不是

代码语言:javascript
运行
复制
while ($i < mysql_num_fields($result)) 

mysqli_fetch_array()允许您以数字数组和关联数组的形式获取数据。

如果在数据库表的第一行上有一个名为ID的数据库字段,则可以使用如下所示:

代码语言:javascript
运行
复制
$id = $row[0];
$id = $row['ID'];

与fetch_row和fetch_assoc相比,它们只能获取它们可以获取的内容(数字数组和关联数组)。

票数 0
EN

Stack Overflow用户

发布于 2014-10-29 11:40:06

代码语言:javascript
运行
复制
// LOOP THRU MULTIPLE rows
while ($row = mysql_fetch_row($result))  {
    $i = 0;
    while ($i < mysql_num_fields($result)) {
        //echo "Information for column $i:<br />\n";
        if ($row[$i]) {
            $fieldN = mysql_field_name($result, $i);
            if (!$fieldN) {    $fieldN = "No_field_name";  }
            $output .= " $tbl F: $fieldN  V: $row[$i]<br />\n";
        }
        $i++;
    } // end while loop thru fields in each row
    $output .= "</p>";
    } // end while there is a row
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26624362

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档