重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
// 这是因为你从资源型结果集中获取数据时只获取了一次, 如果查询为多条数据应该迭代资源型结果集
创新互联长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为霍尔果斯企业提供专业的做网站、网站建设,霍尔果斯网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。
$r = mysql_query($sql); // 你的结果集
$result = [];
while (true) {
$ary = mysql_fetch_assoc($r); // 取出第一条数据, 数据指针向后移动一位
if ($ary) {
$result[] = $ary; // 存储到结果数组中
} else {
break; // 如果取出的结果为false, 则代表数据获取完毕, 终止循环
}
}
echo 'pre';
print_r($result); // 打印最终结果
echo '/pre';
可以参考下面的代码:
//连接数据库服务器
$link = mysql_connect(‘host(服务器ip地址,本地用localhost)’,'数据库账户',‘数据库密码’);
//选择要连接的数据库
mysql_select_db('数据库名字');
//执行查询,返回数据源
$query = mysql_query("SELECT * FROM test");
//遍历数据源,并赋值给$r,当没有数据时,变成false中断循环
while($r = mysql_fetch_array($query)){
echo $r['field_name'];//输出字段
}
扩展资料:
mysql使用说明
1、如果是用 MySQL + Apache,使用的又是 FreeBSD 网络操作系统的话,安装时候应按注意到FreeBSD的版本问题,在 FreeBSD 的 3.0 以下版本来说,MySQL Source 内含的 MIT-pthread 运行是正常的,但在这版本以上,必须使用 native threads,也就是加入一个 with-named-thread-libs=-lc_r 的选项。
2、如果在 COMPILE 过程中出了问题,请先检查gcc版本是否在 2.81 版本以上,gmake 版本是否在3.75以上。
3、如果不是版本的问题,那可能是内存不足,请使用 ./configure--with-low-memory 来加入。
4、如果要重新做configure,那么可以键入 rm config.cache 和 make clean 来清除记录。
5、把 MySQL 安装在 /usr/local 目录下,这是缺省值,也可以按照需要设定所安装的目录。
参考资料来源:百度百科-mySQL (关系型数据库管理系统)
结果已经有了,我就说下这句话的区别
mysql_select_db,字面上就能理解,选择数据库
去PHP手册中可以发现该函数的返回值是bool,也就是布尔值
bool mysql_select_db ( string $database_name [, resource $ link_identifier ] )
只是确定操作是否成功
$result = mysql_query($sql, $link); // 执行查询语句
是执行查询语句,这时返回的是
resource mysql_query ( string $query [, resource $link_identifier ] )
资源符号,通过var_dump($result)可以看到该变量的类型,不是数组
随后通过mysql_fetch_array($result);获取实际查询语句所能获取的数据
每次操作,返回一行数据
该操作会变相的移动该资源的指针,PHP的概念里面没有指针,但需要知道该函数可以多次执行
概念和foreach一致
所以通过
while ($bookInfo = mysql_fetch_array($result)){
}
可以获取所有的行数据
如果没有数据会返回false,所以while会自动停止循环
一、首先你需要在 $result=mysql_query($sql); 这一行之后取一下数据:
$row = mysql_fetch_array($result);
具体原因请看我以前回答过的问题:
二、之后查看获取到的数据:
1. 查看具体值:
echo $result[0];
2. 打印数组(使用源代码看的情况下会很清楚)
print_r($row);
3. 使用php自带的调试函数看数据结构:
var_dump($row);