PHP中使用mysql处理结果集
一.从结果集中将记录取出
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> {$cpage}/{$pagenum}";
echo " <a href='{$url}?page=1'>首页</a>  ";
if($copge!=1)
{
echo " <a href='{$url}?page={$prev}'>上一页</a>  ";
}else{
echo " <a href='{$url}?page=1'>上一页</a>  ";
}
if($coage!=$pagenum){
echo " <a href='{$url}?page={$next}'>下一页</a>  ";
}else{
echo "  <a href='{$url}?page={$pagenum}'>尾页</a>  ";
}
echo "  <a href='{$url}?page={$pagenum}'>尾页</a>  ";
echo '</td></tr>';
echo '</table>';
mysql_free_result($result);
}
table('shops');
//关闭连接
mysql_close();
?>
PHP中使用mysql处理结果集的更多相关文章
- Kubernetes 中部署 MySQL 集群
文章转载自:https://www.cnblogs.com/ludongguoa/p/15319861.html 一般情况下 Kubernetes 可以通过 ReplicaSet 以一个 Pod 模板 ...
- vs中添加MySql实体集流程
默认情况下只有下图: 首先需要下载mysql为vs和ef提供的驱动(可以去官网下载对应的版本) 然后打开vs开始添加实体类 首先在NuGet中安装MySql.Data和MySql.Data.Entit ...
- Linux下MySQL/MariaDB Galera集群搭建过程
MariaDB介绍 MariaDB是开源社区维护的一个MySQL分支,由MySQL的创始人Michael Widenius主导开发,采用GPL授权许可证. MariaDB的目的是完全兼容MySQL,包 ...
- Mysql 常用命令集
1.mysqlbinlog工具使用方法如下: 先使用 show binary logs 查看 在使用导出命令 mysqlbinlog -R -uroot -pxxxx -hxxx.xxx.xxx.xx ...
- MySQL企业常用集群图解
mysql集群架构图片 1.mysql企业常用集群架构 在中小型互联网的企业中.mysql的集群一般就是上图的架构.WEB节点读取数据库的时候读取dbproxy服务器.dbproxy服务器通过对S ...
- corosync+pacemaker and drbd实现mysql高可用集群
DRBD:Distributed Replicated Block Device 分布式复制块设备,原理图如下 DRBD 有主双架构和双主架构的,当处于主从架构时,这个设备一定只有一个节点是可以读写的 ...
- 大并发大数量中的MYSQL瓶颈与NOSQL介绍
NoSQL在2010年风生水起,大大小小的Web站点在追求高性能高可靠性方面,不由自主都选择了NoSQL技术作为优先考虑的方面.今年伊始,InfoQ中文站有幸邀请到凤凰网的孙立先生,为大家分享他之于N ...
- MySQL表空间集
--MySQL表空间集 ----------------------2014-09-20 1. 收缩ibdata的方法,目前MySQL依然没有提供收缩ibdata的方法,只能重构,下面是5.7的步骤. ...
- 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调优参数因为基本复 ...
随机推荐
- 学编程,学单词.....在学习中积累自己的单词(不断更新__ing)
可以去肆意大话天下,可以去小民一般的言语,但是一定要清楚,知识的积累,至于心中,即便你说这粗俗的话,你的个性,气质依旧在那,比如北大的那啥教师(心中的典范),也只有这样,你才能低至市井,上至高阁... ...
- android:configChanges属性
对android:configChanges属性,一般认为有以下几点: 1.不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏 ...
- WebDataTree 使用XML做数据源绑定数据
英文版原文链接:http://www.infragistics.com/help/topic/e5f07b51-ee2d-4a33-aaac-2f43cffff327 所使用的控件版本为:Infrag ...
- uva 1629
1629 - Cake slicing Time limit: 3.000 seconds A rectangular cake with a grid of m * n <tex2html_v ...
- 学习记录008-crond和visudo
1.每隔两个小时将/etc/servers文件打包备份到.tmp下(每次名字不同) [root@kaka cc.log]# tar zcvf /server/backup/ccc.log_$(date ...
- 【bzoj3160】万径人踪灭
题意:给一个只含a.b的字符串,求所有的回文不连续子序列. manacher+FFT. 先求出所有回文序列,再减去连续子序列(即回文串). 将a.b分开考虑,对于一个对称轴,以其为回文中心的回文序列的 ...
- HookIAT的启动程序
// 启动程序.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <Windows.h> #include &l ...
- bzoj 2127: happiness
#include<cstdio> #include<iostream> #include<cstring> #define M 100009 #define inf ...
- SQL Server 2005 镜像构建手册
转载:http://www.cnblogs.com/killkill/archive/2008/05/23/1205792.html 一. 镜像简介 1. 简介 数据库镜像是将数据库事务处理从一个SQ ...
- Chart For Asp.Net ----Overview
一个图表有很多元素构成,所有元素都能通过图表API控制.图表API是面向对象的,可扩展的,高复用的.支持很多图表元素如:data series,data points in a series,char ...