一.从结果集中将记录取出
    mysql_fetch_row($result); 从结果集中取得一行作为枚举数组

mysql_fetch_row($result

mysql_fetch_assoc($result);从结果集中取得一行作为关联数组

mysql_fetch_assoc($result)

以上两个没有什么效率区分
    mysql_fetch_array($result);从结果集中取得一行作为关联数组,或数字数组,或二者兼有

mysql_fetch_array($result)

mysql_fetch_object($result);从结果集中取得一行作为对象

mysql_fetch_object($result)

使用一次就从结果集中取出一条记录
    将指针移动到下一条记录(默认是第一条记录)
    如果取完就返回false    
    mysql_data_seek($result,row)  移动内部结果的指针

mysql_data_seek($result,2)

二.从结果集中获取列的信息
    mysql_field_name()取得结果中指定字段的字段名

<?php
//连接MySQL数据库
$link=mysql_connect("localhost","root","") or die("连接MySQL数据库失败!");
//选择数据库
mysql_select_db($link,"xsphp")or die("选择数据库失败!");
//执行SQL语句
$sql="select id,name,price,num,desn from shops";
$result=mysql_query($link,$sql);
$cols=mysql_num_fields($result); $rows=mysql_num_rows($result); echo '<table align="center" width="800" border="1">';
echo '<caption>演示表</caption>';
echo '<tr>';
for($i=0;$i<$cols;$i++){
    echo '<th>';
    mysql_field_name($result,$i);
    echo '</th>';
}
echo '</tr>';
//取出结果集中记录的信息
while(list($id,$name,$price,$num,$desn)=mysql_fetch_row($result)){echo '<tr>';
    echo '<td>'.$id.'</td>';
    echo '<td>'.$name.'</td>';
    echo '<td>'.$price.'</td>';
    echo '<td>'.$num.'</td>';
    echo '<td>'.$desn.'</td>';
    echo '</tr>';
}
echo '</table>';

/*//移动内部结果的指针
mysql_data_seek($result,2);
//从结果集中将记录取出
while($data=mysql_fetch_assoc($result)){
    print_r($data);
    echo '<br>';
}

//print_r($data);
//var_dump($result);
*/

//释放结果集
mysql_free_result($result); //关闭连接
mysql_close($link);
?>

分页函数

<?php

    //连接mysql数据库
    $link=mysql_connect("localhost","root","") or die("连接mysql数据库失败!");
    //选择数据库
    mysql_select_db("xsphp")or die("选择数据库失败!");

function table($tabname){
    //执行SQL语句
    $num=10;

    $sql="select * from {$tabname}";
    $result=mysql_query($sql);
    $total=mysql_num_rows($result);  //记录总数

    $url="2.php";   //每次请求的URL

    $cpage=isset($_GET["page"])?$_GET["page"]:1;  //当前页

    $pagenum=ceil($total/$num);  //总页数

    $offset=($cpage-1)*$num;    //开始取数据的位置

    $sql="select * from {$tabname} limit {$offset},{$num}";

    $result=mysql_query($sql);

    $start=$offset+1;   //开始记录
    $end=($cpage==$pagenum)?$total:($cpage*$num);  //结束记录

    $next=($cpage==$pagenum)? $pagenum : ($cpage+1);

    $prev=($cpage==1)? 1 : ($cpage-1);

    $cols=mysql_num_fields($result); $rows=mysql_num_rows($result);
    echo '<table align="center" width="800" border="1">';
    echo '<caption>{$tabname}</caption>';
    echo '<tr>';
    for($i=0;$i<$cols;$i++){
    echo '<th>';
    //mysql_field_name($result,$i);
    echo '</th>';
    }
    echo '</tr>';
    //取出结果集中记录的信息
    while(list($id,$name,$price,$num,$desn)=mysql_fetch_row($result)){
    echo '<tr>';
    echo '<td>'.$id.'</td>';
    echo '<td>'.$name.'</td>';
    echo '<td>'.$price.'</td>';
    echo '<td>'.$num.'</td>';
    echo '<td>'.$desn.'</td>';
    echo '</tr>';
    }
    echo '<tr><td colspan="'.$cols.'" align="right">';
    echo "共<b>{$total}</b>条记录, 本页显示<b>{$start}-{$end}</b> &nbsp;&nbsp;{$cpage}/{$pagenum}";
    echo "&nbsp;&nbsp;<a href='{$url}?page=1'>首页</a>&nbsp;&nbsp";
    if($copge!=1)
    {
        echo "&nbsp;&nbsp;<a href='{$url}?page={$prev}'>上一页</a>&nbsp;&nbsp";
    }else{
        echo "&nbsp;&nbsp;<a href='{$url}?page=1'>上一页</a>&nbsp;&nbsp";
    }
    if($coage!=$pagenum){
        echo "&nbsp;&nbsp;<a href='{$url}?page={$next}'>下一页</a>&nbsp&nbsp";
    }else{
        echo "&nbsp;&nbsp<a href='{$url}?page={$pagenum}'>尾页</a>&nbsp;&nbsp";
    }
    echo "&nbsp;&nbsp<a href='{$url}?page={$pagenum}'>尾页</a>&nbsp;&nbsp";
    echo '</td></tr>';
    echo '</table>';

    mysql_free_result($result);
}
table('shops');
 //关闭连接
mysql_close();
?>

PHP中使用mysql处理结果集的更多相关文章

  1. Kubernetes 中部署 MySQL 集群

    文章转载自:https://www.cnblogs.com/ludongguoa/p/15319861.html 一般情况下 Kubernetes 可以通过 ReplicaSet 以一个 Pod 模板 ...

  2. vs中添加MySql实体集流程

    默认情况下只有下图: 首先需要下载mysql为vs和ef提供的驱动(可以去官网下载对应的版本) 然后打开vs开始添加实体类 首先在NuGet中安装MySql.Data和MySql.Data.Entit ...

  3. Linux下MySQL/MariaDB Galera集群搭建过程

    MariaDB介绍 MariaDB是开源社区维护的一个MySQL分支,由MySQL的创始人Michael Widenius主导开发,采用GPL授权许可证. MariaDB的目的是完全兼容MySQL,包 ...

  4. Mysql 常用命令集

    1.mysqlbinlog工具使用方法如下: 先使用 show binary logs 查看 在使用导出命令 mysqlbinlog -R -uroot -pxxxx -hxxx.xxx.xxx.xx ...

  5. MySQL企业常用集群图解

      mysql集群架构图片 1.mysql企业常用集群架构 在中小型互联网的企业中.mysql的集群一般就是上图的架构.WEB节点读取数据库的时候读取dbproxy服务器.dbproxy服务器通过对S ...

  6. corosync+pacemaker and drbd实现mysql高可用集群

    DRBD:Distributed Replicated Block Device 分布式复制块设备,原理图如下 DRBD 有主双架构和双主架构的,当处于主从架构时,这个设备一定只有一个节点是可以读写的 ...

  7. 大并发大数量中的MYSQL瓶颈与NOSQL介绍

    NoSQL在2010年风生水起,大大小小的Web站点在追求高性能高可靠性方面,不由自主都选择了NoSQL技术作为优先考虑的方面.今年伊始,InfoQ中文站有幸邀请到凤凰网的孙立先生,为大家分享他之于N ...

  8. MySQL表空间集

    --MySQL表空间集 ----------------------2014-09-20 1. 收缩ibdata的方法,目前MySQL依然没有提供收缩ibdata的方法,只能重构,下面是5.7的步骤. ...

  9. mysql 的mgr集群

    mysql 的mgr集群 http://wubx.net/mgr%E7%9B%91%E6%8E%A7%E5%8F%8A%E4%BC%98%E5%8C%96%E7%82%B9/ MGR调优参数因为基本复 ...

随机推荐

  1. 一些用于数据整理的excel函数

    我们经常要从外部数据源(如数据库.文本文件或网页等)将数据导入excel中,但是此类数据往往比较混乱,无法满足我们的要求,因此在进行数据分析之前,需要将这些数据进行整理清洗,excel由于将数据的管理 ...

  2. [redis] redis 存取键值对常用的三种使用方式 - Jedis、JedisPool、Jedis分布式

    |-Jedis 普通方式 |-JedisPool 连接池方式(需要引入pool相关jar) |-Jedis 分布式 (需要引入pool相关jar) 引入jedis2.7.0和commons.pool2 ...

  3. cmd界面的编码如何改为utf8

    在中文Windows系统中,如果一个文本文件是UTF-8编码的,那么在CMD.exe命令行窗口(所谓的DOS窗口)中不能正确显示文件中的内容.在默认情况下,命令行窗口中使用的代码页是中文或者美国的,即 ...

  4. MASS批量维护

    T-CODE: MASS 批量更改MASS_CHARVAL 特征的批量维护MASS_EINE 信息记录的成批维护MASS_EKKO 采购订单的成批维护MASS_MARC 后勤/配送的成批维护MASS_ ...

  5. easyui中的combobox小知识点~~

    一直使用的easyui中,一些不为人知的小知识点,与君共勉: 1.combobox设置高度:使用panelHeight属性: 2.combobox本身自带“自动补全”功能,但是在浏览器中是有限制的,在 ...

  6. Windows常用的DOS命令

    cleanmgr–打开磁盘清理工具compmgmt.msc---计算机管理conf—-启动 netmeetingcharmap–-启动字符映射表calc—-启动计算器chkdsk.exe–-Chkds ...

  7. Mysql安全配置【转】

    相关学习资料 http://drops.wooyun.org/tips/2245 http://www.cnblogs.com/siqi/archive/2012/11/21/2780966.html ...

  8. linux apache 自动监护脚本

    1 首先安装curl yum install curl 2 编写shell vi restart_apache.sh 写入一下内容 #!/bin/bashURL="http://127.0. ...

  9. [转]使用CSS3实现树形控件

    下面是一个使用HTML的ul标签制作的关于国家区划的组织结构图. 中国 北京 广东省 广州市 韶关市 海南省 海口市 美兰区 龙华区 秀英区 琼山区 三亚市 安徽省 合肥市 安庆市 United St ...

  10. qml的打包问题

    qml2的打包问题: 相对于早期的项目,只需要打包plugin和动态库.带有sqlite的程序如果需要打包,需要打包如下东西: 1.打包AppData目录下的  Local/Qt Project/项目 ...