php操作mysql工具类_PHP操作数据库的工具类
各位老师请给指点,下面的工具类如果用mysqli封装,如何改写?
class SqlHelper {
public $conn;
public $dbname="chat";
public $username="root";
public $password="123";
public $host="localhost";
public function __construct(){
$this->conn=mysql_connect($this->host,$this->username,$this->password);
if(!$this->conn){
die("连接失败".mysql_error());
}
mysql_select_db($this->dbname,$this->conn);
}
//执行dql语句
public function execute_dql($sql){
$res=mysql_query($sql,$this->conn) or die(mysql_error());
return $res;
}
//执行dql语句,但是返回的是一个数组
public function execute_dql2($sql){
$arr=array();
$res=mysql_query($sql,$this->conn) or die(mysql_error());
//把$res=>$arr 把结果集内容转移到一个数组中.
while($row=mysql_fetch_assoc($res)){
$arr[]=$row;
}
//这里就可以马上把$res关闭.
mysql_free_result($res);
return $arr;
}
//考虑分页情况的查询,这是一个比较通用的并体现oop编程思想的代码
//$sql1="select * from where 表名 limit 0,6";
//$sql2="select count(id) from 表名"
public function exectue_dql_fenye($sql1,$sql2,$fenyePage){
//这里我们查询了要分页显示的数据
$res=mysql_query($sql1,$this->conn) or die(mysql_error());
//$res=>array()
$arr=array();
//把$res转移到$arr
while($row=mysql_fetch_assoc($res)){
$arr[]=$row;
}
mysql_free_result($res);
$res2=mysql_query($sql2,$this->conn) or die(mysql_error());
if($row=mysql_fetch_row($res2)){
$fenyePage->pageCount=ceil($row[0]/$fenyePage->pageSize);
$fenyePage->rowCount=$row[0];
}
mysql_free_result($res2);
//把导航信息也封装到fenyePage对象中
$navigate="";
if ($fenyePage->pageNow>1){
$prePage=$fenyePage->pageNow-1;
$navigate="上一页 ";
}
if($fenyePage->pageNowpageCount){
$nextPage=$fenyePage->pageNow+1;
$navigate.="下一页 ";
}
$page_whole=10;
$start=floor(($fenyePage->pageNow-1)/$page_whole)*$page_whole+1;
$index=$start;
//整体每10页向前翻
//如果当前pageNow在1-10页数,就没有向前翻动的超连接
if($fenyePage->pageNow>$page_whole){
$navigate.=" <";
}
//定$start 1---》10 floor((pageNow-1)/10)=0*10+1 11->20 floor((pageNow-1)/10)=1*10+1 21-30 floor((pageNow-1)/10)=2*10+1
for(;$start
$navigate.="[$start]";
}
//整体每10页翻动
$navigate.=" >> ";
//显示当前页和共有多少页
$navigate.=" 当前页{$fenyePage->pageNow}/共{$fenyePage->pageCount}页";
//把$arr赋给$fenyePage
$fenyePage->res_array=$arr;
$fenyePage->navigate=$navigate;
}
//执行dml语句
public function execute_dml($sql){
$b=mysql_query($sql,$this->conn) or die(mysql_error());
if(!$b){
return 0; //失败
}else{
if(mysql_affected_rows($this->conn)>0){
return 1;//表示执行ok
}else{
return 2;//表示没有行受到影响
}
}
}
//关闭连接的方法
public function close_connect(){
if(!empty($this->conn)){
mysql_close($this->conn);
}
}
}
请老师们指教,多谢!
php操作mysql工具类_PHP操作数据库的工具类相关推荐
- python操作MySQL 模拟简单银行转账操作
一.基础知识 1.MySQL-python的安装 下载,然后 pip install 安装包 2.python编写通用数据库程序的API规范 (1).数据库连接对象 connection,建立pyth ...
- 阿里云mysql管理_阿里云数据库数据管理工具解读
1.背景 阿里云数据库提供MySQL\SQL Server\PostgreSQL\PPAS引擎的在线数据库服务,所有数据库均免费提供了数据管理产品,提供对数据库的界面化管理操作.阿里云提供的数据管理是 ...
- php操作mysql的封装类_PHP封装的mysqli数据库操作类示例
本文实例讲述了PHP封装的mysqli数据库操作类.分享给大家供大家参考,具体如下: 由于PHPMySQL操作在PHP5.4以下被弃用而推荐使用mysqli(MySQL Improvement),这里 ...
- php链接mysql编码错误_php 操作 mysql 数据库 编码 错误
有两行相同的代码,来自不同的 php 文件,在对 MySql 数据库(UTF-8格式)操作时,一行代码正常,一行代码异常 代码1,异常 update ordersystem.product Set P ...
- php mysql难不难_PHP操作mysql数据库
1)连接mysql $con = mysql_connect("localhost","root","12345"); if(!$con){ ...
- php获取mysql数据菜鸟_PHP操作数据库
function con(){ // MYSQL连接参数 $dsn='mysql:host=127.0.0.1;dbname=hello;charset=utf8;port=3306;'; $dbna ...
- go操作mysql创建多对多_Django 数据库表多对多的创建和增删改查
前面已经学习了在Django里面如何对单表的操作,同时也学习了1对多(单个外键)的表的操作.接下来,我们看看多对多(多个外键)的关系如何创建和管理. 比如说,我们有一个主机表,也有一个应用程序表,一个 ...
- java操作mysql导表_java导出数据库的全部表到excel
本文实例为大家分享了java将某个数据库的表全部导出到excel中的方法,供大家参考,具体内容如下 第一步:如何用POI操作Excel @Test public void createXls() th ...
- jdbc basedao mysql_Java使用JDBC连接mysql、sqlserver、orcle数据库的baseDao类
mysql数据库的驱动jar包:mysql-connector-java-5.1.18-bin.jar sqlserver数据库的驱动jar包:sqljdbc.jar orcle数据库的驱动jar包: ...
- 使用sqlmetal工具自动生成SQL数据库的Linq类文件
第一部:找到sqlmetal.exe. 运行cmd. 执行命令 cd C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5 ...
最新文章
- Ado.net连接池 sp_reset_connection 概念
- 台湾一校长震动所有中国人的演讲
- 微信小程序---转发分享功能
- three.js(五) 地形纹理混合
- Ubuntu中的密钥环密码与登陆密码不同
- [转]闲话操作系统1
- fastapi学习(二):路径参数获取与GET、POST参数获取
- 答非所问:产品质量怎样?发现了很多BUG
- 冰河木马学习之监听服务端失败
- 机械制图之三棱锥的三视图
- 阿里云ECS建网站(建站)超详细全套完整图文教程!菜鸟必看!
- Python 将汉字转为拼音
- Netty高级进阶之基于Netty的Websocket开发网页聊天室
- QQ邮箱添加网易邮箱
- 如何通过微信小程序进行更加有效的电商营销?
- 小程序源码:求职招聘微信小程序源码下载v4.1.78
- .net 5+ 知新:【2】 .Net Framework 、.Net 、 .NET Standard的概念与区别
- ssm + redis
- 源生js封装ajax
- 【方案开发】RGB多色补光灯方案
热门文章
- Mybatis mapper代理开发方法实现增删改查
- Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile 解决办法
- 洛克菲勒的38封信pdf下载_洛克菲勒写给儿子的38封信:要有竞争的决心
- android 叠加视图 重启,android-后台应用程序以侦听拖动手势
- python表达式3and5_表达式 3 and 5 的值为____________。(5.0分)_学小易找答案
- jquery name选择器_【百战程序员从开始到植发】之jquery
- python 解压缩字符串_在C中压缩字符串,在python中解压缩
- 自动驾驶 2-3 软件架构 Software Architecture
- 阿里云云计算 52在线实验--云监控初体验
- 常用screen参数