一个B/S结构的网站,需要频繁利使用数据库,每次在一个页面中分别写入数据库连接或其他操作非常繁琐也不容易维护,就让我们来用PHP给MySQL写一个控制类吧。
其实这篇给的代码更像是介绍PHP中MySQL的默认函数,新手看看好了,呵呵
<?php
class MySQL{
//声明
var $m_con;
var $m_hostname = ""; //这4项内容根据项目实际填写
var $m_username = ""; //比如本地测试时就分别是
var $m_password = ""; //localhost,root,你设的密码,用的数据库
var $m_database = "";
var $m_rows = 0;
//初始化
function MySQL(){
//连接MySQL
$this->m_con = mysql_connect($this->m_hostname,$this->m_username,$this->m_password);
if(!$this->m_con){
die("连接MySQL失败。");
}
if(!mysql_select_db($this->m_database,$this->m_con)){
die("无法选择目标数据库:{$this->m_database}。");
}
}
//处理SQL查询
function query($sql){
$this->m_rows = mysql_query($sql,$this->m_con);
if(!$this->m_rows){
die("MySQL发生错误。{$sql}".mysql_error());
}
return $this->m_rows;
}
function fetch(){
return mysql_fetch_array($this->m_rows);
}
//取得最近一次操作变更的行数
function affected_rows(){
return mysql_affected_rows();
}
//结果的列数
function cols(){
return mysql_num_fields($this->m_rows);
}
//结果的行数
function rows(){
return mysql_num_rows($this->m_rows);
}
//释放结果
function free(){
mysql_free_result($this->m_rows);
}
//关闭数据库连接
function close(){
mysql_close($this->m_con);
}
//输出错误信息
function errors(){
return mysql_errno().":".mysql_error();
}
//最近一次操作中出现错误的错误序号
function errorno(){
return mysql_errno();
}
}
?>
如何利用这个类呢,在需要与数据库交换的php页面中,类似如下操作即可
<?php
require_once("MySQL.php");
$mysql = new MySQL;
$sql= "select * from student";
$mysql->query($sql);
while($row = $mysql->fetch()){
echo $row['ID'];
echo $row['name'];
echo $row['tel'];
//略
}
?>
呵呵,不知道这样数据库操作有没有简单一些呢。抛砖引玉,这个方案只能算是最低级的,教学用还可以,哈哈