一个mysql类

---------- php debug ----------
Server=localhost;DataBase=mysql;UserID=root;PassWord=123456
resource(5) of type (mysql result) Output completed (1 sec consumed) - Normal Termination
<?php
class DBCLS
{
#----------------------------------------------------
# 数据库控制类 DBCLS
# 作者:yms
# yms541@yahoo.com.cn
# 2005-5-30
# 2005-5-31
# php_v5.0.1
# Editplus Text Editer v2.12(76)
#---------------------------------

//debug 调试开关
var $debug = true;

//debuginfo 错误信息,调试信息
var $debuginfo = "debug informations:\r\n";

//db_server MySQL主机地址
var $db_server;

//db_name 数据库名
var $db_name;

//db_user 数据库用户名
var $db_user;

//db_passwd 密码
var $db_passwd;

//db_links 数据库连接
var $db_link;

//db_query_sql SQL语句
var $db_query_sql = "show tables";

//db_recordset 结果集,记录集
var $db_recordset;

//ready 就绪开关
var $conntstr_ready = false;
var $link_ready = false;
var $db_ready = false;

//set or return Connection String 返回,或者设定连接字符串
function connection_string($connstr="")
{
if("" == $connstr)
{
//如果没有参数传入,返回已有的连接字符
return "Server=".$this->db_server.";DataBase=".$this->db_name.";UserID=".$this->db_user.";PassWord=".$this->db_passwd;
}
else
{
//否则,解析连接字符,初始化变量
preg_match_all("|([a-zA-Z0-9]*)=([a-zA-Z0-9]*);*|", $connstr, $tmparr, PREG_PATTERN_ORDER);
$this->db_server = (strtolower($tmparr[1][0]) == "server")?$tmparr[2][0]:"";
$this->db_name = (strtolower($tmparr[1][1]) == "database")?$tmparr[2][1]:"";
$this->db_user = (strtolower($tmparr[1][2]) == "userid")?$tmparr[2][2]:"";
$this->db_passwd = (strtolower($tmparr[1][3]) == "password")?$tmparr[2][3]:"";
//var_dump($tmparr);

if("" == $this->db_server or "" == $this->db_name or "" == $this->db_user or "" == $this->db_passwd)
$this->conntstr_ready = false; //如果有其中一个以上变量被赋以空字符串"",准备未就绪
else
$this->conntstr_ready = true;
return $this->conntstr_ready;
}

}
//连接数据库,返回连接对象
function connect()
{
if(!$this->conntstr_ready)
{
if($this->debug){$this->debuginfo .= "连接字符串无效!\r\n";}
return $this->link_ready;
}
if($this->db_link = @mysql_connect($this->db_server, $this->db_user, $this->db_passwd))
{
$this->link_ready = true;
return $this->link_ready;
}
}
//选择数据库
function select($db = "")
{
if(!$this->db_link)
{
if($this->debug){$this->debuginfo .= "没有可用的数据库连接!\r\n";}
$this->db_ready = false;
}
if("" == $db)
{
if(mysql_select_db($this->db_name))
$this->db_ready = true;
}
if(mysql_select_db($this->db_name = $db))
$this->db_ready = true;
return $this->db_ready;
}

//执行查询
function execute($SQL = "")
{
if("" != $SQL)
{
$this->db_query_sql = $SQL;
//if($this->debug){$this->debuginfo .= "SQL is null!\r\n";}
//return false;
}
if("" == $this->db_query_sql)
{
if($this->debug){$this->debuginfo .= "SQL is null!\r\n";}
return false;
}
$this->db_recordset = mysql_query($this->db_query_sql);
return true;
}
}

$dbmy = new DBCLS(); //创建一个DBCLS对象
if(!$dbmy->connection_string("Server=localhost;DataBase=mysql;UserID=root;PassWord=123456"))//初始化DBCLS对象dbmy

print $dbmy->debuginfo; //初始化失败,输出错误信息

else

print $dbmy->connection_string(); //初始化成功,输出连接字符串
print "\r\n";

if(!($dbmy->connect()) or !($dbmy->select())) //如果连接数据库,或者选择数据库失败
print $dbmy->debuginfo; //输出出错信息
//$dbmy->db_query_sql = "select * from user";
if($dbmy->execute()) //执行查询指令
{ //如果不出错
var_dump($dbmy->db_recordset);//输出返回的结果集
}
?>

输出信息:

---------- php debug ----------
Server=localhost;DataBase=mysql;UserID=root;PassWord=123456
resource(5) of type (mysql result)

Output completed (1 sec consumed) - Normal Termination

时间: 2025-01-25 09:22:43

一个mysql类的相关文章

自己编了一个mysql类。请指正

mysql 文件名mysql.class.php<?//###################### Start Introduce #######################################// mysql连接类// author: bluemaple , emaile: bluemaple@x263.net// 可以执行一般mysql命令,如insert,delete,select,update// 使用方法:在需要的文件前面加入// require("./mysq

PHP基于单例模式实现的mysql类_php技巧

本文实例讲述了PHP基于单例模式实现的mysql类.分享给大家供大家参考,具体如下: <?php defined('ACC')||exit('Access Denied'); // 封装mysql操作类,包括连接功能,及查询功能. class mysql extends absdb{ protected static $ins = null; protected $host; // 主机名 protected $user; // 用户名 protected $passwd; // 密码 prot

php基于单例模式封装mysql类完整实例_php技巧

本文实例讲述了php基于单例模式封装mysql类.分享给大家供大家参考,具体如下: 类: <?php header("content-type:text/html;charset=utf-8"); //封装一个类 /* 掌握满足单例模式的必要条件 (1)私有的构造方法-为了防止在类外使用new关键字实例化对象 (2)私有的成员属性-为了防止在类外引入这个存放对象的属性 (3)私有的克隆方法-为了防止在类外通过clone成生另一个对象 (4)公有的静态方法-为了让用户进行实例化对象

php实现带读写分离功能的MySQL类完整实例_php技巧

本文实例讲述了php实现带读写分离功能的MySQL类.分享给大家供大家参考,具体如下: 概述: 1. 根据sql语句判断是连接读库还是写库 2. 链式调用$this->where()->get() 3. 不同的主机对应不同的实例, 不再多次new 具体代码如下: <?php class DBRWmysql { private static $Instance = null; private $links = array();//链接数组 private $link = null; //当

mysql-求一个Mysql语句 查询出当前周的数据按照天分组

问题描述 求一个Mysql语句 查询出当前周的数据按照天分组 SELECT DATE_FORMAT(uploadTime_beg%Y-%m-%d"") as time SUM(field01) as sumStatus1 SUM(field02) as sumStatus2 SUM(field03) as sumStatus3 SUM(field04) as sumStatus4 SUM(field05) as sumStatus5 FROM health_realdata WHERE

一个Ajax类

ajax 一个Ajax类function Ajax(url,recvT,stringS,resultF) {    this.url = url;    this.stringS = stringS;    this.xmlHttp = this.createXMLHttpRequest();    if (this.xmlHttp == null) {        alert("erro");        return;    }    var objxml = this.xml

jsp或者说JAVA倒底有多快?这里有一个计时类,可以帮你的忙。同时支持JAVA和JSP。内有例子。

js //作者:sonymusic//原载于豆腐技术站(www.asp888.net)package sony.utils; import java.util.*;import javax.servlet.jsp.*;/*** 一个计时类.* 创建日期:(2000-11-6 13:09:38)* 作者:SonyMusic(sonymusic@china.com)*/public class Timing{private ArrayList nameArray=new ArrayList();pr

如何编写一个ASP类

前几天大佛写了"ASP设计模式",可能有些初学者或者刚刚接触ASP的朋友不一定完全看得明白,偶就整理了一下编写一个ASP类的方法,大部分是从网上找来的.希望对朋友们有帮助. <ASP设计模式>(作者 我佛山人): 首先ASP的类是由事件和方法(它们就是构成类的成员了)构成的,如果大家还没有接触过,可以先看看下面的说明:在 Class 块中,成员通过相应的声明语句被声明为 Private(私有成员,只能在类内部调用) 或 Public(公有成员,可以在类内外部调用) .被声明

Flash制作的一个3D类效果

刚从Macromedia官方网站上淘到一个3D类,不知道以前发过没有.觉得还不错,就发上来了.有兴趣的朋友可以下载看看. 点击这里下载源文件 自己写了一篇教程,对自学有一些帮助 Macromedia 3Dclasses1.添加场景SceneName:Scene= new Scene();属性:clip:MovieClip 绘制物体的影片剪辑f:Number 焦距比数,过小会使物体变形,默认为300(最自然)quaternion:Quaternion 四元数,默认为0,0,0,1(处理旋转用)方法