dbda数据库类
<?php
class DBDA
{
public $host="localhost";//服务器地址
public $uid="root";//用户名
public $pwd="";//密码 public $conn;//连接对象
//操作数据库的方法
//$sql代表需要执行的SQL语句
//$type代表SQL语句的类型,1代表查询,0代表增删改
//$db代表要操作的数据库名称
//如果是查询,返回二维数组
//如果是其他语句,返回true或false
function __construct($db="z-stu"){
//造连接对象
$this->conn = new MySQLi($this->host,$this->uid,$this->pwd,$db);
}
public function Query($sql,$type=1){
//判断是否出错
!mysqli_connect_error() or die("连接失败!");
//执行SQL语句
$result = $this->conn->Query($sql);
//判断SQL语句类型
if($type==1) {
//如果是查询语句,返回结果集的二维数组
return $result->fetch_all();
}else{
//如果是其他语句,返回true或false
return $result;
}
} //Ajax调用返回JSON
public function JsonQuery($sql,$type=1,$db="mydb"){
//定义数据源
$dsn = "mysql:dbname={$db};host={$this->host}";
//造pdo对象
$pdo = new PDO($dsn,"{$this->uid}","{$this->pwd}");
//准备执行SQL语句
$st = $pdo->prepare($sql);
//执行预处理SQL语句
if($st->execute()){
if($type==1){
$attr = $st->fetchAll(PDO::FETCH_ASSOC);
return json_encode($attr);
}else{
if($st){
return "OK";
}else{
return "NO";
}
}
}else{
echo "执行失败!";
}
} //Ajax调用返回字符串
public function StrQuery($sql,$type=1){
//判断连接是否成功
!mysqli_connect_error() or die("连接失败!");
//执行SQL语句
$result = $this->conn->query($sql);
//判断SQL语句类型
if($type==1){
$attr = $result->fetch_all();
$str = "";
//如果是查询语句返回字符串
for($i=0;$i<count($attr);$i++){
for($j=0;$j<count($attr[$i]);$j++){
$str = $str.$attr[$i][$j];
$str = $str."^";
}
$str = substr($str,0,strlen($str)-1);
$str = $str."|";
}
$str = substr($str,0,strlen($str)-1);
return $str;
}else{
//如果是其他语句,返回true或false
if($result){
return "OK";
}else{
return "NO";
}
}
} function PdoQuery($sql,$type=1,$db="mydb"){
//造数据源
$dns = "mysql:host={$this->host};dbname={$db}";
//造pdo对象
$pdo = new PDO($dns,$this->uid,$this->pwd);
//准备一条SQL语句
$stm = $pdo->prepare($sql);
//执行预处理语句
$r = $stm->execute();
if($r){
if($type==1){
return $stm->fetchAll();
}else{
return "OK";
}
}else{
return "NO";
}
}
}
dbda数据库类的更多相关文章
- PHP用单例模式实现一个数据库类
使用单例模式的出发点: 1.php的应用主要在于数据库应用, 所以一个应用中会存在大量的数据库操作, 使用单例模式, 则可以避免大量的new 操作消耗的资源. 2.如果系统中需要有一个类来全局控制某些 ...
- Dedesql数据库类详解
今天花点时间讲解下织梦的sql数据库类,近期本来是准备录制一套视频教程的,但由于视频压缩的问题迟迟没有开展工作,如果大家有什么好的视频压缩方式可以通过邮件的方式告诉我:tianya#dedecms.c ...
- phpcms 源码分析四: 数据库类实现
这次是逆雪寒的数据库类分析: <?php /* 这个讲 phpcms 的数据库类 和 phpcms 的文本缓存的实现.看了看 都是很简单的东西.大家看着我注释慢慢看吧.慢慢理解,最好能装了PHP ...
- php备份数据库类分享
本文实例讲述了php实现MySQL数据库备份类.分享给大家供大家参考.具体分析如下:这是一个非常简单的利用php来备份mysql数据库的类文件,我们只要简单的配置好连接地址用户名与数据库即可 ph ...
- Python一个简单的数据库类封装
#encoding:utf-8 #name:mod_db.py '''使用方法:1.在主程序中先实例化DB Mysql数据库操作类. 2.使用方法:db=database() db.fet ...
- dede数据库类使用方法 $dsql(转)
dede数据库类使用方法 $dsql dedecms的数据库操作类,非常实用,在二次开发中尤其重要,这个数据库操作类说明算是奉献给大家的小礼物了. 引入common.inc.php文件 ? 1 r ...
- Dedesql数据库类详解(二次开发必备教程)(转)
http://www.dedecms.com/help/development/2009/1028/1076.html 织梦DedeCMS的二次开发不仅仅是会写写织梦的标签,会制作织梦的模板.很多时候 ...
- CodeIgniter自带的数据库类使用介绍
在 CodeIgniter 中,使用数据库是非常频繁的事情.你可以使用框架自带的数据库类,就能便捷地进行数据库操作. 初始化数据库类 依据你的数据库配置载入并初始化数据库类: view source ...
- CodeIgniter框架——数据库类(配置+快速入门)
CodeIgniter用户指南——数据库类 数据库配置 入门:用法举例 连接数据库 查询 生成查询结果 查询辅助函数 Active Record 类 事务 表格元数据 字段元数据 自定义函数调用 查询 ...
随机推荐
- 流程控制------if else分支语句
一.If`······else语句:如果条件成立,就执行在语句体... 语法:if 条件: 语句体1 语句体2 语句体3 ··········· 例如: 1. if True: ...
- 整理pandas操作
本文原创,转载请标识出处: http://www.cnblogs.com/xiaoxuebiye/p/7223774.html 导入数据: pd.read_csv(filename):从CSV文件导入 ...
- 利用css实现页面加载时旋转动画
有时浏览一些网站时在刚加载页面时候会出现一个滚动动画如下图,特别是对于一些移动端的站点或者混合应用来说应该用户体验会好很多,扒了下页面发现是用css样式控制的,于是把页面以及css样式赋值了下来, h ...
- i++,++i 作为参数
C++11Prime里说过不同的编译器读取参数的方向不同,有的从左到右,有的从右到左. 我在想他说的是不是指,32位系统通过栈把参数压入,所以从右到左,而64位前6个是寄存器存取,所以从左到右. 还是 ...
- Andrew Ng机器学习课程笔记--week9(上)(异常检测&推荐系统)
本周内容较多,故分为上下两篇文章. 一.内容概要 1. Anomaly Detection Density Estimation Problem Motivation Gaussian Distrib ...
- 用户管理-linux基础
用户管理 useradd -u -g -G(附加组) ,-c -d -s -r(创建系统用户) -M (不创建家目录) 思考:删除user1用户家目录,如何还原. 可以#cp ...
- <经验杂谈>前端form提交导出数据
之前在做列表的是总会遇到一些导出的功能,而在做导出的时候总是习惯于用get的方法将参数放在url上,这样一来就会有很多的弊端,一是url的参数长度有限,遇到有的参数很长的时候就会报错,二是也不太安全. ...
- RabbitMQ核心概念篇
RabbitMQ介绍 一.RabbitMQ使用场景 RabbitMQ他是一个消息中间件,说道消息中间件[最主要的作用:信息的缓冲区]还是的从应用场景来看下: 1.系统集成与分布式系统的设计 各种子系统 ...
- [2013-07-22]varnish-cache 安装配置及体验笔记
varnish安装 ubuntu12安装参考 其他系统参考 如果选择了直接从源安装的方式的话,就不要自己去编译了,以免出现意外(悲剧的我,varnishlog 有点问题,之前先编译安装了,再从源安装, ...
- 两台主机之间单向Ping不通的问题
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } p.p2 ...