分享
 
 
 

MySQL数据库类的定义

王朝mysql·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

俗话说“好的开始是成功的一半”,而PHP+MySQL项目中数据库的操作是重点之一,能否简化数据库操作程序的编写,就成了影响工作效率的关键之一。

所以小阳并不是一开始就做页面,而是先建立一个“dbclass.php”文件,开始编写操作MySQL数据库的类“dbClass”。即在“dbclass.php”中编写以下程序:

<? php

$db_username="myusername"; //连接数据库的用户名

$db_password="mypassword"; //连接数据库的密码

$db_database="mydatabase"; //数据库名

$db_hostname="localhost"; //服务器地址

class dbClass{ //开始数据库类

var $username;

var $password;

var $database;

var $hostname;

var $link;

var $result;

function dbClass($username,$password,$database,$hostname="localhost"){

$this->username=$username;

$this->password=$password;

$this->database=$database;

$this->hostname=$hostname;

}

function connect(){ //这个函数用于连接数据库

$this->link=mysql_connect($this->hostname,$this->username,$this->password) or die("Sorry,can not connect to database");

return $this->link;

}

function select(){ //这个函数用于选择数据库

mysql_select_db($this->database,$this->link);

}

function query($sql){ //这个函数用于送出查询语句并返回结果,常用。

if($this->result=mysql_query($sql,$this->link)) return $this->result;

else {

//这里是显示SQL语句的错误信息,主要是设计阶段用于提示。正式运行阶段可将下面这句注释掉。

echo "SQL语句错误: <font color=red>$sql</font> <BR><BR>错误信息: ".mysql_error();

return false;

}

}

/*

以下函数用于从结果取回数组,一般与 while()循环、$db->query($sql) 配合使用,例如:

$result=query("select * from mytable");

while($row=$db->getarray($result)){

echo "$row[id] ";

}

*/

function getarray($result){

return @MySQL_fetch_array($result);

}

/*

以下函数用于取得SQL查询的第一行,一般用于查询符合条件的行是否存在,例如:

用户从表单提交的用户名$username、密码$password是否在用户表“user”中,并返回其相应的数组:

if($user=$db->getfirst("select * from user where username='$username' and password='$password' "))

echo "欢迎 $username ,您的ID是 $user[id] 。";

else

echo "用户名或密码错误!";

*/

function getfirst($sql){

return @mysql_fetch_array($this->query($sql));

}

/*

以下函数返回符合查询条件的总行数,例如用于分页的计算等要用到,例如:

$totlerows=$db->getcount("select * from mytable");

echo "共有 $totlerows 条信息。";

*/

function getcount($sql){

return @mysql_num_rows($this->query($sql));

}

/*

以下函数用于更新数据库,例如用户更改密码:

$db->update("update user set password='$new_password' where userid='$userid' ");

*/

function update($sql){

return $this->query($sql);

}

/*

以下函数用于向数据库插入一行,例如添加一个用户:

$db->insert("insert into user (userid,username,password) values (null,'$username','$password')");

*/

function insert($sql){

return $this->query($sql);

}

function getid(){ //这个函数用于取得刚插入行的id

return mysql_insert_id();

}

}

/*

主要函数就是这些,如果你自己有另外的需要,也可以自己添加上去。

因为凡使用该类的都必须连接数据库,下面就连接并选择好数据库吧:

*/

$db=new dbClass("$db_username","$db_password","$db_database","$db_hostname");

$db->connect();

$db->select();

?>

OK,数据库的类已经写好了,它不但可以用在目前这个项目中,其他项目的同样适用!只要把“dbclass.PHP”复制过去就行了。要用本文件的时候只要用语句“include_once("dbclass.php")”就行,具体语法在编写数据库类时已有举例,不再赘述。

写好数据库的类后,数据库的操作就方便多了,项目的制作已跨出了重要的第一步。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有