博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql 数据库操作通用类_mysql 数据库操作通用类
阅读量:7067 次
发布时间:2019-06-28

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

PHP MySQL数据库操作通用类

22:00 2006-11-20 完成

作者:月影 QQ:41096834 email:zhangxugg@163.com

**************************************

没有版权,欢迎转发 但请保留此说明 谢谢 有什么问题,欢迎一起交流 进步

**************************************

说明 凡是本人写的PHP类,都以MFC的类的命名方式为参照 即以大写C开头 第二个字母也大写 其它字母小写 如CUpload,CDb,CImage等

参数说明

使用范例:

//构造一个数据库类,并连连接到info数据库的person表 后面的参数就不用我解释了吧 呵呵~

$db=new CDb("info","10.0.0.254","root","");

//返回查询记录数

//先执行查询

$db->query("select * from person");

//返回记录数量

$n=$db->get_num();

//查询出记录集

$rs=$db->get_rs();

echo $rs("id");

*/

class CDb // 类别表的类定义

{

var $host; //MySQL服务器

var $result; //一个查询结果集合

var $num; //查询记录数 整数

var $row; //查询结果对象

var $sql; //查询语句

var $rs; //查询结果记录集

var $conn; //数据库连接结果资源

//因为一般MySQL服务器变化的可能性比较小,所以,将数据库及数据表参数放在前面 如有可能,你可以自由调整构造函数参数顺序

function CDb($database="mysite",$host="127.0.0.1",$usr="root",$psd="key2000")

{

$this->host=$host;

$this->usr=$usr;

$this->psd=$psd;

$this->database=$database;

$this->sql="";

$this->conn=@mysql_connect($host,$usr,$psd) or die("无法连接MySQL服务器.");

mysql_select_db($database);

//echo("连接成功");

}

function change_table($database) //切换数据库

{

$this->database=$database;

mysql_select_db($this->database);

}

function query($sql)

{

$this->sql=$sql;

$result=mysql_query($this->sql);

$this->result=$result;

return $this->result;

}

function get_num() //得到查询记录数目

{

$this->errdb("Integer CDb::get_num(void)");

$this->num=mysql_num_rows($this->result);

return $this->num;

}

function get_row()  //返回一个记录集对象用箭头引用

{

$this->errdb("object row CDb::get_row(void)");

$this->row=mysql_fetch_object($this->result);

return $this->row;

}

function get_rs()  //返回一个记录集数组

{

$this->errdb("Array CDb::get_rs(void)");

$this->rs=mysql_fetch_array($this->result);

return $this->rs;

}

function close()

{

mysql_close($this->conn);

}

//错误捕获

function errdb($str)

{

if(!$this->result)

{

echo("在没有执行正确的CDb::query(\$sql) 之前,无法执行 ".$str);

exit;

}

}

}

class CUpload  //上传文件类定义

{

var $file_name;

var $ext_name;  //副档名

var $main_name;  //主档名 不包含副档名

var $tmp_name;

var $upload_dir; //上传路径

var $size;  //文件大小

var $time;  //上传文件时间

var $exist;

function CUpload($upload_dir="./")

{

$this->upload_dir=$upload_dir;

}

function do_upload($str,$opt=0)    //传入上载文件表单名 0表示以原来文件名保存 1表示以时间为名保存

{            //exist 为0表示忽略已经存在的同名文件 1表示不能忽略

$s=$_FILES[$str]['name'];

if(!isset($_FILES[$str])) err("fsda");

$this->ext_name=substr($s,strrpos($s,"."),strlen($s));

$this->file_name=$s;

$this->main_name=substr($s,0,strrpos($s,"."));

$this->tmp_name=$_FILES[$str]['tmp_name'];

$this->size=sprintf("%.2f",$_FILES[$str]['size']/1024);

$this->time=date("ymdhms");

$this->ext_name=substr($this->file_name,strrpos($this->file_name,"."),strlen($this->file_name));

$dist_name=$this->time.$this->ext_name;

if($opt==0)

{

$dist_name=$this->file_name;

}

$this->file_name=$dist_name;

if(move_uploaded_file($this->tmp_name,$this->upload_dir.$dist_name))

return true;

else

return false;

}

} ?>

转载地址:http://vpqll.baihongyu.com/

你可能感兴趣的文章
web前端----JavaScript对象
查看>>
一起学Android之Http访问
查看>>
mybaties+mysql:插入数据,返回自增长的id
查看>>
azkaben任务调度器
查看>>
L102
查看>>
New Concept English Two 7
查看>>
极致精简的webservice例子
查看>>
Django的cookie学习
查看>>
HTML5之美二 --- 转载
查看>>
python全栈开发 * 11知识点汇总 * 1806011
查看>>
@override报错
查看>>
POJ3068:"Shortest" pair of paths——题解
查看>>
js判断当前时间前几天和格式校验
查看>>
Linux (Ubuntu)安装ssh
查看>>
详细解释:nginx中ChsHttpIndexModule模块配置及各个参数含义
查看>>
20165306 第四周学习任务
查看>>
手把手教你用动软.NET代码生成器实例教程
查看>>
栈分配的速度快于堆
查看>>
[转] 使用memc-nginx和srcache-nginx模块构建高效透明的缓存机制
查看>>
CF-Pasha and Tea(贪心6)
查看>>