php 管理mysql数据库_php管理mysql数据库类
class MySQL_DB {
private $last_query; //上一次执行的sql指令
private $conn; //当前连接数据库服务器的资源类型
private $errno; //错误代号
private $errDie = true; //强制错误后结束脚本
private $errMsgArr_filename = "";//自定义错误提示信息数组的文件名
//构造函数
public function __construct($dbhost, $dbuser, $dbpwd, $dbname, $dbcharset="utf8", $pconnect=0) {
//连接数据库服务器
if($pconnect == 0) {
$this->conn = mysql_connect($dbhost, $dbuser, $dbpwd);
}else{
$this->conn = mysql_pconnect($dbhost, $dbuser, $dbpwd);
}
if($this->conn == false) {
$this->errno = mysql_errno();//记录发生的错误代号
$this->errMsg();//报错
}
//选择操作的目标数据库
$res = mysql_select_db($dbname, $this->conn);
if($res == false) {
$this->errno = mysql_errno();//记录发生的错误代号
$this->errMsg();//报错
}
//设置字符集编码
$this->query("set names " . $dbcharset);
}
//设置errDie属性的方法(预留为以后ajax做操作准备)
private function set_errDie($value){
$this->errDie = $value;
}
//查询一条记录的sql操作
public function get_one($sql) {
$res = $this->query($sql);
$row = mysql_fetch_assoc($res);
return $row;
}
//查询多条
public function get_all($sql) {
$res = $this->query($sql);
$arr = array();
while($row = mysql_fetch_assoc($res)) {
$arr[] = $row;
}
return $arr;
}
//查询一个字段的值
public function get_val($sql) {
$res = $this->query($sql);
$row = mysql_fetch_array($res);
return $row[0];
}
//统计行数
public function get_count($tbName, $addWhere="") {
$sql = "select count(*) from {$tbName} {$addWhere}";
return $this->get_val($sql);
}
//执行sql指令
public function query($sql) {
$this->last_query = $sql;//保存当前的sql指令
$res = mysql_query($sql);
if($res == false) {
$this->errno = mysql_errno();//记录发生的错误代号
if($this->errno == 1062) {
//针对唯一性索引的错误,做特殊处理
return -1062;
}else{
$this->errMsg();//报错
}
}else{
return $res;
}
}
public function get_insert_id() {
return mysql_insert_id();
}
//设置自定义错误数组文件名的方法
private function set_errMsgArr_filename($filename) {
$this->errMsgArr_filename = $filename;
}
//获得定义在单独文件中的自定义错误信息
private function get_errMsgArr() {
if(file_exists($this->errMsgArr_filename)){
require_once($this->errMsgArr_filename);
}else{
$mysql_err_msg = "";
}
return $mysql_err_msg;
}
public function errMsg() {
echo "
echo "Errno: " . $this->errno."
";
echo "Last Query: " . $this->last_query . "
";
//显示自定义的错误信息
$errMsgArr = $this->get_errMsgArr();
$errMsg = empty($errMsgArr) ? mysql_error() : ($errMsgArr[$this->errno] . "(" . mysql_error(). ")");
echo "Error Message: " . $errMsg;
echo "
";
if($this->errDie == true) {
exit;
}
}
}
?>
php 管理mysql数据库_php管理mysql数据库类相关推荐
- 使用php连接mysql数据库_PHP使用mysql与mysqli连接Mysql数据库用法示例
本文实例讲述了PHP使用mysql与mysqli连接Mysql数据库的方法.分享给大家供大家参考,具体如下: 代码很简单直接上了 /** * @Author: HTL * @Description: ...
- mysql 9.0创建数据库_PHP与MySQL学习笔记9:创建Web数据库
1.在服务器上部署MySQL服务基本步骤合注意点 1)安装MySQL(命令安装.安装包安装等) 2)考虑是否需要一个独立的操作系统用户权限来运行MySQL程序. 3)路径的设置 4)root密码 (附 ...
- php如何删除数据mysql数据库_php如何删除数据库
php如何删除数据库 1.首先查看有哪些数据库 2.使用php删除test2<?php $dbhost = 'localhost'; // mysql服务器主机地址 $dbuser = 'roo ...
- php和mysql一起_PHP和MYSQL数据库合理且有效的结合在一起_MySQL
将PHP和MYSQL合理且有效的结合在一起可以制作出精致的数据库网站.MYSQL是一种小型的,紧密的数据服务器,支持标准SQL.它在UNIX和WINDOWS环境下都能够使用. PHP和MYSQL都是免 ...
- php 复制mysql数据库_PHP连接MySQL数据库的三种方式
本篇文章给大家介绍一下PHP连接MySQL数据库的三种方式(mysql.mysqli.pdo),结合实例形式分析了PHP基于mysql.mysqli.pdo三种方式连接MySQL数据库的相关操作技巧与 ...
- php与mysql同步_php实现mysql同步的实现方法
拿到需求之后,发现这两个网站的MYSQL数据库都不能远程访问(安全第一吧).于是想起了 平时使用的CSV文件批量录入数据.于是 尝试使用CSV导入导出. 导入到处框架如下: 1首先将数据导出成CSV的 ...
- php.ini mysql扩展_PHP安装mysql.so扩展及相关PHP.ini 配置参数说明
在PHP中mysql_connect模块已经逐渐被弃用,我在搭建环境时也没有再安装mysql扩展,但是今天在维护一个老项目时,出现报错 Fatal error: Uncaught Error: Cal ...
- php pdo mysql 预处理_PHP PDO mysql 处理类(prepare 预处理)
使用预处理,动态处理需要操作的字段和值.先使用PDO来动态绑定参数.PDOModel: /** * Description of PDO * * @author Administrator */ cl ...
- php连接mysql地址_PHP连接mysql
PHP 5 及以上版本建议使用以下方式连接 MySQL : MySQLi extension ("i" 意为 improved) PDO (PHP Data Objects) 在 ...
- 搜索的php mysql代码生成器_PHP FOR MYSQL 代码生成助手(根据Mysql里的字段自动生成类文件的)...
根据 Mysql 里的字段 自动生成 类文件: 但需要导入: require_once ./db/ez_sql_core.php; require_once ./db/ez_sql_mysql.php ...
最新文章
- java if (name!=null name!=),命名不规范,lombok泪两行!
- 【错误记录】NDK 配置错误 ( C/C++ debug|arm64-v8a : Could not get version from cmake.dir path )
- 今天才发现ff不支持navigate。
- linux错误说未声明,如何在Linux 32位计算机上解决REG_EIP未声明(在此函数中首次使用)错误?...
- currenttimemillis 毫秒还是秒_Elasticsearch如何做到数十亿数据查询毫秒级响应?
- 阿里云云治理中心正式上线,助力企业快速云落地
- Yet Another Multiple Problem 同余定理 bfs
- 合并excel文件 C语言,再见Ctrl + C!合并100个Excel表格,只需30秒!
- matlab isinteger,MATLAB数据类型
- 新Azure 服务仪表盘!
- hdu 2089 数位dp入门
- AD域控exchange邮箱(一)——批量安装MSI安装包
- echarts图表使用v-show控制图表显示不全的问题
- 小甲鱼python学习笔记1
- “开闭原则”实现图书售卖简单实现
- 雷达波形样式_?认知雷达的架构
- ubuntu大小写切换键的使用
- Java 在Word中创建表格
- Mac下查看公网以及内网IP地址
- 网宿cdn api 刷新缓存函数
热门文章
- 【codevs1036】商务旅行,LCA练习
- 2017.8.8 loli测试
- 【英语学习】【Level 07】U07 Stories of my Life L3 Campus memories
- 【英语学习】【Daily English】U06 Shopping L04 I like everything aboutit but the price.
- mpython掌控板体温_用mpython x玩转掌控板——摇出好心情
- 绝地求生2017.7.27服务器维护,绝地求生大逃杀更新内容 7月27日更新了什么
- zookeeper中展示所有节点_zookeeper工作原理与节点使用
- python种颜色循环_python – 重置Matplotlib中的颜色循环
- OpenGL ES 3.2
- 20050519:把机器拿到鸡兄那里去修了