<?phpclass DB{ private $host; private $post; private $user; private $pass; private $dbname; private $link; private $charset; private $prefix; public function __construct($arr=array()){ $this->host = isset($arr['host']) ? $arr['host'] : $GLOBALS['config']['mysql']['host'];
$this->post = isset($arr['post']) ? $arr['post'] : $GLOBALS['config']['mysql']['port']; $this->user = isset($arr['user']) ? $arr['user'] : $GLOBALS['config']['mysql']['user']; $this->pass = isset($arr['pass']) ? $arr['pass'] : $GLOBALS['config']['mysql']['pass'];
$this->dbname = isset($arr['dbname']) ? $arr['dbname'] : $GLOBALS['config']['mysql']['dbname']; $this->charset = isset($arr['charset']) ? $arr['charset'] : $GLOBALS['config']['mysql']['charset']; $this->prefix = isset($arr['prefix']) ? $arr['prefix'] : $GLOBALS['config']['mysql']['prefix'];
$this->db_connect(); //数据库连接 $this->db_usedb(); //使用的数据库 $this->db_charset(); //设置字符集 } /* * 连接数据库 */ private function db_connect(){ @$this->link = mysql_connect($this->host.':'.$this->post,$this->user,$this->pass); if(!$this->link){ echo '数据库连接失败
'; echo '错误编号:'.mysql_errno() . '
'; echo '错误原因:'.mysql_error() . '
'; exit; } }/* * 设置字符集*/private function db_charset(){ $this->db_query("set names {$this->charset}");}/* * 选择数据库*/private function db_usedb(){ $this->db_query("use {$this->dbname}");}/* * 执行SQL语句,处理可能存在的语法错误 * @param1 string $sql,要执行的SQL语句 * @return 返回正确的执行结果*/private function db_query($sql){ @$res=mysql_query($sql); if(!$res){ echo '数据库执行失败(检查mysql语句)
'; echo '错误编号:'.mysql_errno() . '
'; echo '错误原因:'.mysql_error() . '
'; } return $res;}/* * 新增数据方法 * @param1 string $sql,要执行的SQL语句 * @return 自增长id*/public function db_insert($sql){ $this->db_query($sql); return mysql_insert_id();}/* * 删除数据方法 * @param1 string $sql,要执行的SQL语句 * @return 受影响的行数*/public function db_delete($sql){ $this->db_query($sql); return mysql_affected_rows();}/* * 修改数据方法 * @param1 string $sql,要执行的SQL语句 * @return 受影响的行数*/public function db_update($sql){ $this->db_query($sql); return mysql_affected_rows();}/* * 查询一条记录 * @param1 string $sql,要执行的SQL语句 * @return mixed,成功返回一维数组,失败返回false*/public function db_getOne($sql){ $res = $this->db_query($sql); //返回信息 return mysql_fetch_assoc($res);}/* * 查询多条记录 * @param1 string $sql,要执行的SQL语句 * @return array,成功是二维数组,失败是一维空数组*/public function db_getAll($sql){ $res = $this->db_query($sql); $lists = array(); while($row = mysql_fetch_assoc($res)){ $lists[] = $row; } return $lists;}/* *构造表名 *@return 带前缀的表全名*/protected function getTable($table = ''){//父类的表前缀拼作子类的表名return ($table == '') ? $this->prefix.$this->table : $this->prefix . $table;}// 这是类的结束符号} //$db = new DB(); //$arr=array(); //$sql="update stu set name='野草' where id =1"; //$arr=$db->db_update($sql); //var_dump($arr); //echo $arr;
'; echo '错误编号:'.mysql_errno() . '
'; echo '错误原因:'.mysql_error() . '
'; exit; } }/* * 设置字符集*/private function db_charset(){ $this->db_query("set names {$this->charset}");}/* * 选择数据库*/private function db_usedb(){ $this->db_query("use {$this->dbname}");}/* * 执行SQL语句,处理可能存在的语法错误 * @param1 string $sql,要执行的SQL语句 * @return 返回正确的执行结果*/private function db_query($sql){ @$res=mysql_query($sql); if(!$res){ echo '数据库执行失败(检查mysql语句)
'; echo '错误编号:'.mysql_errno() . '
'; echo '错误原因:'.mysql_error() . '
'; } return $res;}/* * 新增数据方法 * @param1 string $sql,要执行的SQL语句 * @return 自增长id*/public function db_insert($sql){ $this->db_query($sql); return mysql_insert_id();}/* * 删除数据方法 * @param1 string $sql,要执行的SQL语句 * @return 受影响的行数*/public function db_delete($sql){ $this->db_query($sql); return mysql_affected_rows();}/* * 修改数据方法 * @param1 string $sql,要执行的SQL语句 * @return 受影响的行数*/public function db_update($sql){ $this->db_query($sql); return mysql_affected_rows();}/* * 查询一条记录 * @param1 string $sql,要执行的SQL语句 * @return mixed,成功返回一维数组,失败返回false*/public function db_getOne($sql){ $res = $this->db_query($sql); //返回信息 return mysql_fetch_assoc($res);}/* * 查询多条记录 * @param1 string $sql,要执行的SQL语句 * @return array,成功是二维数组,失败是一维空数组*/public function db_getAll($sql){ $res = $this->db_query($sql); $lists = array(); while($row = mysql_fetch_assoc($res)){ $lists[] = $row; } return $lists;}/* *构造表名 *@return 带前缀的表全名*/protected function getTable($table = ''){//父类的表前缀拼作子类的表名return ($table == '') ? $this->prefix.$this->table : $this->prefix . $table;}// 这是类的结束符号} //$db = new DB(); //$arr=array(); //$sql="update stu set name='野草' where id =1"; //$arr=$db->db_update($sql); //var_dump($arr); //echo $arr;