一个常用php mysql数据库连接类
这是一很基础的东西我们能过构造函数来实现创建类就自动与mysql服务器进行连接,我们只要设置好 $name,$pass,$table三个变量的值就好了,代码如下:
- <?php
- class ConnectionMySQL{
-
- private $host="localhost";
-
- private $name="root";
-
- private $pass="";
-
- private $table="phptest";
-
- private $ut="utf-8";
-
-
-
- function __construct(){
- $this->ut=$ut;
- $this->connect();
-
- }
-
-
- function connect(){
- $link=mysql_connect($this->host,$this->name,$this->pass) or die ($this->error());
- mysql_select_db($this->table,$link) or die("没该数据库:".$this->table);
- mysql_query("SET NAMES '$this->ut'");
- }
-
- function query($sql, $type = '') {
- if(!($query = mysql_query($sql))) $this->show('Say:', $sql);
- return $query;
- }
-
- function show($message = '', $sql = '') {
- if(!$sql) echo $message;
- else echo $message.'<br>'.$sql;
- }
-
- function affected_rows() {
- return mysql_affected_rows();
- }
-
- function result($query, $row) {
- return mysql_result($query, $row);
- }
-
- function num_rows($query) {
- return @mysql_num_rows($query);
- }
-
- function num_fields($query) {
- return mysql_num_fields($query);
- }
-
- function free_result($query) {
- return mysql_free_result($query);
- }
-
- function insert_id() {
- return mysql_insert_id();
- }
-
- function fetch_row($query) {
- return mysql_fetch_row($query);
- }
-
- function version() {
- return mysql_get_server_info();
- }
-
- function close() {
- return mysql_close();
- }
-
-
- function fn_insert($table,$name,$value){
- $this->query("insert into $table ($name) value ($value)");
- }
-
- function fn_delete($table,$id,$value){
- $this->query("delete from $table where $id=$value");
- echo "id为". $id." 的记录被成功删除!";
- }
- }
-
-
-
- $db = new ConnectionMySQL();
-
- $db->fn_insert('test','id,name,sex',"'','hongtenzone','M'");
- $db->fn_delete('test', 'id', 1);
-
- ?>
这里我要讲述一下关于构造函数,代码如下:
-
- function __construct(){
- $this->ut=$ut;
- $this->connect();
-
- }
这个页面使用了构造函数特别要主要在函数中不要调用数据库连接类了,否则在当前页面会有多连接连接如果访问过大服务器就会出mysql has gone的提法.