博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysqlhelper
阅读量:5928 次
发布时间:2019-06-19

本文共 4286 字,大约阅读时间需要 14 分钟。

SqlHelper.php代码如下:
mysqli=new MySQLi(self::$host,self::$user,self::$pwd,self::$db); if($this->mysqli->connect_error){ die("连接数据库失败! ".$this->mysql->connect_error); } $this->mysqli->query("set names utf8"); } function execute_dql_all($sql){ //执行查询语句 $arr=array(); $this->result=$this->mysqli->query($sql) or die ($this->mysql->connect_error); //将数据转存到$arr数组中 while($row=mysqli_fetch_array($this->result,MYSQL_BOTH)){ $arr[]=$row; } $this->result->free(); return $arr; } function execute_dql_num($sql){ //执行查询语句 $arr=array(); $this->result=$this->mysqli->query($sql) or die ($this->mysql->connect_error); //将数据转存到$arr数组中 while($row=mysqli_fetch_array($this->result,MYSQLI_NUM)){ $arr[]=$row; } $this->result->free(); return $arr; } function execute_dql_assoc($sql){ //执行查询语句 $arr=array(); $this->result=$this->mysqli->query($sql) or die ($this->mysql->connect_error); //将数据转存到$arr数组中 while($row=mysqli_fetch_array($this->result,MYSQLI_ASSOC)){ $arr[]=$row; } $this->result->free(); return $arr; } //查询某表中的记录数 function execute_dql_counts($table,$id="*"){ $this->sql="select count($id) from $table"; $this->result=$this->mysqli->query($this->sql); $row=mysqli_fetch_all($this->result); $this->result->free(); return $row[0][0]; } function execute_dml($sql){ //执行正删改 $this->result=$this->mysqli->query($sql); if(!$this->result){ return -1;//执行正删改失败 }else{ if($this->mysqli->affected_rows>0){ return 1;//执行正删改成功,影响行数 }else{ return 0;//执行正删改成功,但没有影响行数 } } }}Paging.php代码如下:
sqlHelper=new SqlHelper(); $this->returnArr=array(); } /* * 参数说明 * * $table 分页时对那个表的数据分页 * $id 辅助查询当前分页的数据表的总记录数 * $pageSize 每页显示多少条信息记录数 * $pagingSize 分页栏每次循环显示出来的个数 * $nowPage 当前是第几页,默认第一页 * $href 分页栏的超链接将要往哪里连接 */ function paging_prev_next($table,$id="*",$pageSize,$pagingSize,$nowPage=1,$href){ $this->counts=$this->sqlHelper->execute_dql_counts($table,$id); $this->pageCount=ceil($this->counts/$pageSize); $this->returnArr["count"]=$this->counts; $this->returnArr["start"]=($nowPage-1)*$pageSize; $this->returnArr["limit"]=$pageSize; if($nowPage>$this->pageCount || $nowPage<=0){ return false; } $t=(ceil($nowPage/$pagingSize)-1)*$pagingSize+1; $pre=$nowPage-$pagingSize; $nex=$nowPage+$pagingSize; echo " {$nowPage}/{$this->pageCount} <"; for($i=$t;$i<$t+$pagingSize;$i++){ if($i*$pageSize>$this->pageCount*$pageSize){ break; }else{ if($nowPage==$i){ echo " {$i}"; }else{ echo " {$i}"; } } } echo " >"; return $this->returnArr; }}paging-list-link.css代码如下:/** * Created by JetBrains PhpStorm. * User: lee * Date: 13-7-27 * Time: 下午5:56 * To change this template use File | Settings | File Templates. */.paging-list-a{ border:1px solid #b5b5af; background-color:#efebed; font-family: 'Meiryo UI'; font-size: 16px; font-weight: 600; padding: 0px 8px 0px 8px; /*cursor: pointer;*/ text-decoration: none; color: #292927;}.paging-list-a-withBg{ background-color: #1D92E2; color: white;}usePaging.php代码如下:
paging_prev_next("city","ID",$meiyexiansi,$meiyelianjieshu,$nowPage,"usePaging.php");//容错判断if(!$receiveArr){ return;}//查询每页需要显示的数据,大小限制存在 $receiveArr 数组中$sqlHelper=new SqlHelper();$result=$sqlHelper->execute_dql_num("select * from city limit ".$receiveArr['start'].",".$receiveArr['limit']."");echo "
";print_r($result);echo "
";?>所使用的数据库为 MySQL5.6 所自带的 world 数据库下面是运行的效果截图:不过代码还有个 Bug 。就是翻页到最后的时候会出现显示不了,原因在于 Paging.php 文件的 41~43 行左右判断有问题。错误代码如下:if($nowPage>$this->pageCount || $nowPage<=0){ return false;}

  

转载于:https://www.cnblogs.com/hualiu0/p/5112902.html

你可能感兴趣的文章
WebService-01入门篇(简单实现)
查看>>
服务器环境之2:ubuntu14.04安装jdk1.7
查看>>
iOS视图生命周期
查看>>
使用Spring MVC统一异常处理实战
查看>>
我的友情链接
查看>>
ojdbc6中的错误信息
查看>>
ActiveGantt(甘特图控件)更新至v3.0.4
查看>>
零基础学 Python 之列表生成式
查看>>
C语言:计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值
查看>>
数据在内存中的存储
查看>>
Eclipse SmartHome源码编译过程
查看>>
【安全牛学习】笔记手动漏洞挖掘(三)
查看>>
web安全测试概述
查看>>
图片的各种转换
查看>>
【阿里云网站日志分析实践】通过Log Service日志服务导入MaxCompute分析
查看>>
聊聊HystrixConcurrencyStrategy
查看>>
数据库的基本配置和链接
查看>>
linux学习笔记——认识docker及其操作命令
查看>>
linux学习笔记——源码编译安装Mysql
查看>>
对centos进行一些个性化设置(如alias等)
查看>>