问答详情
源自:7-2 PHP数据库扩展

为什么只能查出一条数据,数据库有两个字段,id和name两个记录,1-tom 2-lisa,只能查出第一条

<?php
$link = mysqli_connect('localhost', 'root', '','test') or die('数据库连接失败');
if($link){
    echo"ok";
    echo "\n";
}else{
    echo"error";
}
mysqli_select_db($link,'test');
mysqli_query($link,"set names 'utf8'");
$result = mysqli_query($link,'select * from user');
$row = mysqli_fetch_assoc($result);
print_r($row);


提问者:qq_ArtificialIn_3 2018-07-26 15:35

个回答

  • 慕前端4767672
    2019-01-05 11:20:19

    感觉if($link){    echo"ok";    echo "\n";}else{    echo"error";}多此一举啊;

    你前面不是已经or die('数据库连接失败');

  • qq_客欲远行_0
    2018-08-12 21:22:57

    额,抱歉,看错了,我以为你的代码里有limit 1

  • qq_客欲远行_0
    2018-08-12 21:21:38

    除了mysqli_fetch_assoc只取一行之外,limit 1也是只取一条记录

  • qq_ArtificialIn_3
    2018-07-26 17:01:04

    https://img.mukewang.com/5b598da90001c20c06050116.jpg加个循环OK了 , 已解决

  • qq_ArtificialIn_3
    2018-07-26 16:43:41

    https://img.mukewang.com/5b5989030001dccd02680048.jpghttps://img1.mukewang.com/5b5989320001a8b504140095.jpg


    是不是因为这个函数只取一条数据作为关联数组,所以他就默认只拿走了数据库第一条记录,之后的记录就没有转换了,所以Array数组的打印结果只有一条记录?如果是这样,怎么才能将所有查询到的数据打印出来。或者说,从那个结果集中取出来。不是很理解,请大神指教

  • qq_ArtificialIn_3
    2018-07-26 15:38:18

    https://img1.mukewang.com/5b597a5b0001563202230175.jpg这是输出结果

  • qq_ArtificialIn_3
    2018-07-26 15:36:32

    有没有大佬解释一下,刚接触这门语言,没有报错的问题感觉很麻烦