章节
问答
课签
笔记
评论
占位
占位

PHP数据库操作之取得数据查询结果

通过前面的章节,我们发现PHP操作数据库跟MySql客户端上操作极为相似,先进行连接,然后执行sql语句,再然后获取我们想要的结果集。

PHP有多个函数可以获取数据集中的一行数据,最常用的是mysql_fetch_array,可以通过设定参数来更改行数据的下标,默认的会包含数字索引的下标以及字段名的关联索引下标。

$sql = "select * from user limit 1";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);

可以通过设定参数MYSQL_NUM只获取数字索引数组,等同于mysql_fetch_row函数,如果设定参数为MYSQL_ASSOC则只获取关联索引数组,等同于mysql_fetch_assoc函数。

$row = mysql_fetch_row($result);
$row = mysql_fetch_array($result, MYSQL_NUM); //这两个方法获取的数据是一样的
$row = mysql_fetch_assoc($result);
$row = mysql_fetch_array($result, MYSQL_ASSOC);

如果要获取数据集中的所有数据,我们通过循环来遍历整个结果集。

$data = array();
while ($row = mysql_fetch_array($result)) {
    $data[] = $row;
}

任务

使用mysql_fetch_array函数获取一行数据,并将他赋值到$row变量中,以便于后面输出。

?不会了怎么办

在第13行输入以下代码:

$row = mysql_fetch_array($result);
||
1
2
<?php
//
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
提交
重置代码
||

请验证,完成请求

由于请求次数过多,请先验证,完成再次请求

加群二维码

打开微信扫码自动绑定

您还未绑定服务号

绑定后可得到

  • · 粉丝专属优惠福利
  • · 大咖直播交流干货
  • · 课程更新,问题答复提醒
  • · 账号支付安全提醒

收藏课程后,能更快找到我哦~

使用 Ctrl+D 可将课程添加到书签

邀请您关注公众号
关注后,及时获悉本课程动态

举报

0/150
提交
取消
全部 精华 我要发布

最新回答 / PAN_0109
应该是服务器上没有这个数据库

最新回答 / 慕盖茨202719
抱歉不知道哎

最新回答 / weixin_慕瓜1299627
因为这个函数从结果集只返回一行的作为关联数组,或数字数组

最新回答 / 慕粉1742441634
JSON包含数组形式以及对象形式。

最新回答 / 慕沐7363818
同楼上,我猜应该是你的mysql_query($sql)返回值是false,你用var_dump()试一下,看看是不是返回false。

已采纳回答 / 五趾的鱼
$row = mysql_fetch_array($result,MYSQL_NUM);后边少了个MYSQL_NUM

已采纳回答 / 好东西
/* 索引数组,即通常情况下所说的数组 */关联数组,指以非序数类型为下标来存取的数组异同:索引数组,带有数字索引的数组。关联数组,带有指定键的数组。

最新回答 / 俺就是兔子
添加个回复的你觉得这服务器可以扛得住么

已采纳回答 / 放狗过来
因为你的$result打错了打成$rseult了,要细心

最赞回答 / 慕粉1903442220
 $data = array(); 这句是新建一个空数组,容易理解。$row = mysql_fetch_array($result) 这是循环中的条件。跟我们正常看到的循环条件不同(如:$i < 10,如果是这种,那么很简单,变量 $i 大于等于 10 时,循环就结束了),这个条件是一个赋值语句(即:$i = 10 这种形式的)。赋值语句 $row = mysql_fetch_array($result) 的意思是,使用 mysql_fetch_array() 函数每次获取查询结果集合($resu...

最新回答 / 一首歌一一个故事
mysqli_query 在5.0以后的版本,sql语句的执行都字使用这个mysqli_前缀,而mysql_已经被废弃

最新回答 / 慕侠0718635
$conn=new mysqli('localhost:3306','root','root','test');//连接不行的话,可以换成$conn=mysql_connect('数据库地址','用户名','密码');试试。if(!$conn){    die('连接失败:'.mysql_error);}else  {    echo '连接成功';        }   }先试试能否连接数据库,然后在判断问题。

已采纳回答 / 蓄意
要遍历一遍然后循环把值存到一个数组里面。一般语句执行成功结果为真,所以也能作为循环条件。

最新回答 / _TimChen
mysql_fetch_array() 函数从结果集中取得一行作为关联数组,或数字数组,或二者兼有返回根据从结果集取得的行生成的数组,如果没有更多行则返回 false,就跳出循环。
全部 我要发布
最热 最新
只看我的

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

账号登录 验证码登录

遇到问题
忘记密码

代码语言