mysql.php 获取数据库中的记录,全然个人经验总结,仅供參考!

<?

php

/**

*PHP+MYSQL数据库基本功能

*http://blog.csdn.net/yown

*/

############################################

#获取序列ID

############################################

function getSequence() {

$sql = "update sequence set id=last_insert_id(id+1);";

$sql2= "select last_insert_id();";



global $dbuser,$dbpass,$host,$database,$printsql;



$link = mysql_connect($host,$dbuser,$dbpass);

if(! $link){

  return mysql_error();

}



mysql_select_db($database);

mysql_query("SET NAMES UTF8"); 

if($printsql) echo "<hr/>".$sql."<hr/>";

mysql_query($sql);

if($printsql) echo "<hr/>".$sql2."<hr/>";

$result = mysql_query($sql2);



if(mysql_num_rows($result)==0){

  mysql_close($link);

  return "";

}

$myrow = mysql_fetch_row($result);

$ret=$myrow[0];



mysql_close($link);

return $ret;

}

############################################

#获取strSql第N条记录中的第N列数据,下标从1開始

############################################

function getData($strsql,$row,$col) {

global $dbuser,$dbpass,$host,$database,$printsql;



$link = mysql_connect($host,$dbuser,$dbpass);

if(! $link){

  return mysql_error();

}



mysql_select_db($database);

mysql_query("SET NAMES UTF8"); 

if($printsql) echo "<hr/>".$strsql."<hr/>";

$result = mysql_query($strsql);



if(mysql_num_rows($result)==0){

  mysql_close($link);

  return "";

}

$i=0;

while($myrow = mysql_fetch_row($result)){



   if($i==$row-1){

      $ret=$myrow[$col-1];

      break;

   }

   $i=$i+1;

}



mysql_close($link);

return $ret;



}



############################################

#获取strSql第N条记录

############################################

function getRowData($strsql,$row) {

global $dbuser,$dbpass,$host,$database,$printsql;



$link = mysql_connect($host,$dbuser,$dbpass);

if(! $link){

  return mysql_error();

}



mysql_select_db($database);

mysql_query("SET NAMES UTF8"); 

if($printsql) echo "<hr/>".$strsql."<hr/>";

$result = mysql_query($strsql);



if(mysql_num_rows($result)==0){

  mysql_close($link);

  return "";

}

$i=0;

while($myrow = mysql_fetch_array($result)){



   if($i==$row-1){

      $ret=$myrow;

      break;

   }

   $i=$i+1;

}



mysql_close($link);

return $ret;



}



############################################

#获取strSql记录集存入数组中

############################################

function getResultSetData($strsql) {

global $dbuser,$dbpass,$host,$database,$printsql;



$link = mysql_connect($host,$dbuser,$dbpass);

if(! $link){

  return mysql_error();

}



mysql_select_db($database);

mysql_query("SET NAMES UTF8"); 

if($printsql) echo "<hr/>".$strsql."<hr/>";

$result = mysql_query($strsql);



if(mysql_num_rows($result)==0){

  mysql_close($link);

  return "";

}



while($myrow = mysql_fetch_array($result)){

      $ret[]=$myrow;     

}



mysql_close($link);

return $ret;

}



############################################

#运行strSql

############################################

function executeSql($strsql) {

global $dbuser,$dbpass,$host,$database,$printsql;



$link = mysql_connect($host,$dbuser,$dbpass);

if(! $link){

  return mysql_error();

}



mysql_select_db($database);

mysql_query("SET NAMES UTF8"); 

if($printsql) echo "<hr/>".$strsql."<hr/>";

mysql_query($strsql);

$ret =mysql_affected_rows($link);

mysql_close($link);

return $ret;

}



/*

 分页

*/

 function Pager(&$curpage,&$pagesize,&$tsql,&$psql,&$totalpage,&$totalrow,&$pagerset){



 $curpage=isset($curpage)?

intval($curpage):1;//当前页

 $totalpage=0;//总页数

 $totalrow=0;//总记录数

 if($printsql) echo "<hr/>".$tsql."<hr/>";

 if($curpage <= 0){

   $curpage=1;

 }

 

 $totalrow=getData($tsql,1,1);//取得总记录数

 $totalrow=strlen(totalrow)==0?

0:$totalrow; 

 if($totalrow>0){

   $totalpage=$totalrow%$pagesize==0?(int)($totalrow/$pagesize):(int)($totalrow/$pagesize)+1;

    if($curpage>$totalpage){

      $curpage=1;

   }

      

   $psql=$psql." limit ".(($curpage-1)*$pagesize).",".$pagesize;

    if($printsql) echo "<hr/>".$psql."<hr/>"; 

    $pagerset=getResultSetData($psql);//取得当前页记录

 }

 if($totalrow==0||$totalrow=="0"){ $curpage=1;}

 

}



?>

php高效获取数据分页的更多相关文章

  1. pandas | 如何在DataFrame中通过索引高效获取数据?

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是pandas数据处理专题的第四篇文章,我们一起来聊聊DataFrame中的索引. 上一篇文章当中我们介绍了DataFrame数据结构当 ...

  2. Statement和PreparedStatement的特点 MySQL数据库分页 存取大对象 批处理 获取数据库主键值

    1 Statement和PreparedStatement的特点   a)对于创建和删除表或数据库,我们可以使用executeUpdate(),该方法返回0,表示未影向表中任何记录   b)对于创建和 ...

  3. SQL Server 怎么在分页获取数据的同时获取到总记录数

    SQL Server 获取数据的总记录数,有两种方式: 1.先分页获取数据,然后再查询一遍数据库获取到总数量 2.使用count(1) over()获取总记录数量 SELECT * FROM ( SE ...

  4. redis分页获取数据

    php代码: 采用哈希类型存储数据,有序集合存储分页数据,进行倒序与正序的排序. $getGoodsInfo = M('goods_test')->select(); for($i=0;$i&l ...

  5. Mongoose 分页查询优化、获取数据总长度

    无论是传统网页还是 ajax api,我们都不得不进行数据分页,一来节省带宽二来提升页面响应速度.作为一个数据完备的 web 应用,做好分页功能能极大提升用户体验. 简单的分页查询 在 mongoos ...

  6. jquery datatable 获取当前分页的数据

    使用jquery datatable 遇到分页分别求和时,找了半天才找到获取当前分页数据的方法,以此总结 var table=$('#example').DataTable( { "pagi ...

  7. tp5 使用paginate分页获取数据对象之后 如何对对象进行数据添加

    tp5 使用paginate分页获取数据对象之后 如何对对象进行数据添加 大家都知道,在使用tp5的paginate获取分页数据之后,得到的是一个数据对象,但有时会碰到要对数据对象进行二次加工的情况, ...

  8. 腾讯云图片鉴黄集成到C# SQL Server 怎么在分页获取数据的同时获取到总记录数 sqlserver 操作数据表语句模板 .NET MVC后台发送post请求 百度api查询多个地址的经纬度的问题 try{}里有一个 return 语句,那么紧跟在这个 try 后的 finally {}里的 code 会 不会被执行,什么时候被执行,在 return 前还是后? js获取某个日期

    腾讯云图片鉴黄集成到C#   官方文档:https://cloud.tencent.com/document/product/641/12422 请求官方API及签名的生成代码如下: public c ...

  9. 【Django+Element UI】使用一个接口文件,搞定分页获取数据,模糊查询后分页获取数据

    1:序列化获取数据的接口设计 1:分页获取序列化数据 2:是个能传参数的接口 class Society(APIView): def post(self, request): keywords = s ...

随机推荐

  1. cocos2dx游戏如何架构

    声明:此篇文章不介绍如何使用cocos2dx制作游戏.站在架构师的角度如果制作游戏. 以我多年的游戏开发经验,和其他技术积累, 市面的所谈的一些软件架构模式都不太适合游戏软件. 我指的架构模式,MVC ...

  2. cuda输出

    cuda的输出就是printf 可以在屏幕上显示出来,但你修改之后一定要make编译,不然只是修改了源代码,但生成的可执行文件还是之前编译的

  3. 用字符串对列表赋值,一个字符串对应一个列表元素,eg: my @escaped = "asteriskasterisk hash access unpack_func";

    my @escaped = "asteriskasterisk hash access unpack_func";     # 是一个元素的赋值 25 unless( $escap ...

  4. B4. Concurrent JVM 锁机制(synchronized)

    [概述] JVM 通过 synchronized 关键字提供锁,用于在线程同步中保证线程安全. [synchronized 实现原理] synchronized 可以用于代码块或者方法中,产生同步代码 ...

  5. python selenium等待特定网页元素加载完毕

    selenium等待特定元素加载完毕 is_disappeared = WebDriverWait(driver, 8, 0.5, ignored_exceptions=TimeoutExceptio ...

  6. vue中axios发送post请求,后端(@RequestParam)接不到参数

    遇到的问题描述 :axios post 请求,后端接收不到参数. 我们的接口是java,用@RequestParam来接收前端的参数 解决方案:使用qs:axios中已经包含有qs,所以无需重新安装, ...

  7. 2019浙师大校赛(浙大命题)(upc复现赛)总结

    2019浙师大校赛(浙大命题)(upc复现赛)总结 早上九点开始.起得迟了,吃了早饭慌慌张张跑过去,刚到比赛就开始了. 开始分别从前往后和从后往前看题,一开始A题,第一发WA,第二次读题发现漏看了还有 ...

  8. enote笔记法的思考(ver0.2)

    章节:enote笔记法的思考   enote笔记法,它是一种独特的文本标记方式与呈现方式.这一整套系统的记笔记的方法,它能够帮助我们对文本内容(例如,其中的概念.观点.思想等)更加直观和条理地进行理性 ...

  9. 「 HDU P4734 」 F(x)

    # 题目大意 对于一个数 $x$,它的每一位数字分别是 $A_{n}A_{n-1}A_{n-2}\cdots A_{2}A_{1}$,定义其权重 $f(x)=\sum_{i=1}^{n}\left(A ...

  10. [Python3网络爬虫开发实战] 5.2-关系型数据库存储

    关系型数据库是基于关系模型的数据库,而关系模型是通过二维表来保存的,所以它的存储方式就是行列组成的表,每一列是一个字段,每一行是一条记录.表可以看作某个实体的集合,而实体之间存在联系,这就需要表与表之 ...