首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取第一列数据的MySQL查询&获取重复数据的MySQL查询

问获取第一列数据的MySQL查询&获取重复数据的MySQL查询
EN

Stack Overflow用户
提问于 2017-03-22 23:54:32
回答 2查看 39关注 0票数 1

所以我的问题是,我试图从一个first_name表中获取所有的students,但是当我执行mysqli_fetch_array并使用print_r()1输出结果时,它只输出表中的第一个first_name。

学生表

代码语言:javascript
复制
students_id | first_name | last_name | teacher_id
1           | abc        | efg       | 10
2           | 123        | xyz       | 10

所以输出是Array ( [0] => wda [first_name] => wda )。但我希望它同时输出两个first_name。

同时,我得到了相同数据的副本。

示例

代码语言:javascript
复制
Array ( [0] => abc [first_name] => abc )

数组存储了两次abc,所以我如何才能不获得数据的副本呢?

PHP代码

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
    <title>Name Tags</title>
</head>
<body>
    <?php 

        require '../../connect.php';

        $results = mysqli_query($link, "SELECT first_name FROM students");

        if($results) {
            $results_arr = mysqli_fetch_array($results);

            print_r($results_arr);

            if(is_array($results_arr)) {
                foreach ($results_arr as $fname) {
                    echo "

                        <h1>$fname</h1>

                    ";
                }
            } else {
                echo '<h1>Empty</h1>';
            }
        } else {
            echo 'Sorry, we ran into an error, please try again later.';
        }

     ?>
</body>
</html>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-22 23:57:36

mysqli_fetch_array() (和其他mysqli_fetch_XXX()函数)只返回结果的一行。必须在循环中调用它才能得到所有的行。您不需要在这个数组上循环,只需访问所需的列。

代码语言:javascript
复制
while ($row = mysqli_fetch_assoc($results)) {
    $fname = $row['first_name'];
    echo "<h1>$fname</h1>";
}
票数 1
EN

Stack Overflow用户

发布于 2017-03-23 00:01:08

Mysqli_fetch_array()只检索一行输出:

代码语言:javascript
复制
while($r=mysqli_fetch_array($result)) {
  print $r[0] . "<br />";
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42964808

复制
相关文章

相似问题

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