php入门之连接mysql数据库的一个类,一个常用php
分类:微服架构

<?php
/*
创建自己的mysql_class类
*/
class mysql{
     private $host;//为了数据库安全,设置私有属性
     private $name;
     private $pass;
     private $bbs;
     private $gb;

 代码如下

 代码如下

项目结构:

function __construct($host,$name,$pass,$bbs,$gb){
$this->host=$host;
$this->name=$name;
$this->pass=$pass;
$this->bbs=$bbs;
$this->gb=$gb;
$this->connect();

* 1、连接服务器 2、各类sql动作
*/
class mysql{
    private $host;  //服务器地址
    private $name;  //用户名称
    private $pass;  //密码
    private $table; //连接数据库教程
    private $jiema; //设置解码
    private $ztime; //设置服务器的时区
    //构造函数
    function __construct($host,$name,$pass,$table,$jiema,$ztime){
        $this -> host  = $host  ;
      $this -> name  = $name  ;
      $this -> pass  = $pass  ;
      $this -> table = $table ;
  $this -> jiema = $jiema ;
  $this -> ztime = $ztime ;
      $this -> connect();
     }
     //数据库连接和设置
     function connect(){
         $link=@mysql_connect($this-%3Ehost,$this-%3Ename,$this-%3Epass) or die ("连接服务器失败");
         @mysql_select_db($this->table,$link) or die("连接数据失败");
         @mysql_query("set names '$this->jiema'");
      @date_default_timezone_set("$this->ztime");
     }
    //执行操作
 function query($sql) {
     if(!($query = @mysql_query($sql))) $this->show($sql);
  return $query;
 }
    //显示信息
    function show($message = '', $sql = '') {
  if(!$sql) echo $message;
  else echo $message.'<br>'.$sql;
 }
    //取得数据集的某个值
 function result($query,$row,$values) {
  return @mysql_result($query,$row,$values);
 }
    //取得数据集的某个值
 function get_values($table,$row,$values) {
     $query = $this -> query("select * from $table");
  $returnvalues = mysql_result($query,$row,$values);
  return $returnvalues;
 }
    //取得数据集的行数
 function num_rows($query) {
  return @mysql_num_rows($query);
 }
    //循环读取数据
 function fetch($query) {
  return @mysql_fetch_array($query);
 }
    //最后一次插入纪录的id值
 function insert_id() {
  return mysql_insert_id();
 }
    //取得数据集中的一行
 function fetch_row($query) {
  return mysql_fetch_row($query);
 }
    //插入一条数据
    function fn_insert($table,$name,$value){
     if($this->query("insert into $table ($name) values ($value)")){
      return true;
  }else{
      return false;
  }
    }
    //插入任意数据
    function sql_insert($tbname,$postvalues){
        foreach ($postvalues as $key => $value) {
   $postvalue .= "`".$key."`".",";
   $sqlvalue .= "'".$value."',";
  }
  $sqlfield = mb_substr("$postvalue",0,-1,'gbk');
  $sqlvalue = mb_substr("$sqlvalue",0,-1,'gbk');
  if($this-> fn_insert("$tbname","$sqlfield","$sqlvalue")){
      return true;
  }else{
      return false;
  }
 } 
    //修改万能数据
    function sql_update($table,$postvalues,$wwhere){
  foreach ($postvalues as $key=>$value) {
   $sqlfield .= $key."="."'".$value."'".",";
  }
  $sqlfield= mb_substr("$sqlfield",0,-1,'gbk');
  if($this->fn_update("$table","$sqlfield","$wwhere")){
      return true;
  }else{
      return false;
  }
 }
    //修改一条数据
    function fn_update($table,$value,$wwhere){
     if($this->query("update $table set $value where $wwhere")){
      return true;
     }else{
      return false;
  }
    }
    //删除一条数据
    function sql_delete($table,$wwhere){
     if($this->query("delete from $table where $wwhere")){
      return true;
  }else{
      return false;
  }
 }
 //关闭数据连接
    function close() {
  return mysql_close();
 }
}
$db =  new mysql($location['host'],$location['hostname'],$location['hostpass'],$location['table'],$location['jiema'],$location['ztime']);   
?>

<?php
 class ConnectionMySQL{
     //主机
     private $host="localhost";
     //数据库的username
     private $name="root";
     //数据库的password
     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();
     }
 
     //向$table表中插入值
     function fn_insert($table,$name,$value){
         $this->query("insert into $table ($name) value ($value)");
     }
     //根据$id值删除表$table中的一条记录
     function fn_delete($table,$id,$value){
         $this->query("delete from $table where $id=$value");
         echo "id为". $id." 的记录被成功删除!";
     }
 }
 
//调用方法

图片 1

}

 $db =  new ConnectionMySQL();
 
 $db->fn_insert('test','id,name,sex',"'','hongtenzone','M'");
 $db->fn_delete('test', 'id', 1);
 
 ?>

运行效果;

function connect(){   //连接数据库
    $link=mysql_connect($this->host,$this->name,$this->pass);//连接数据库
    mysql_select_db($this->bbs,$link);//选择数据库
    mysql_query("SET NAMES '$this->gb'");//设置字符集

这里我要讲述一下关于构造函数

图片 2
conn.php
复制代码 代码如下:
class ConnectionMySQL{
//主机
private $host="localhost";
//数据库的username
private $name="root";
//数据库的password
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.'
'.$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();
}
//向$table表中插入值
function fn_insert($table,$name,$value){
$this->query("insert into $table ($name) value ($value)");
}
//根据$id值删除表$table中的一条记录
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 query($link, $type = '') {
        if(!($query = mysql_query($link))) $this->show('Say:', $link);
        return $query;
    }
  //测试一下我的类是否成功,我就用个插入语句
  function insert($db1,$name,$value){
      $this->query("insert into $db1 ($name) value ($value)");
  }
}

 代码如下

$db = new mysql('localhost','root','','bbs','gbk');//实例化
$db->insert('message','id,user,title,content,lastdate',"'','王志强','计算机','计算机',now()");

 //构造函数
     function __construct(){
         $this->ut=$ut;
         $this->connect();
 
     }

?>

这个页面使用了构造函数特别要主要在函数中不要调用数据库连接类了,否则在当前页面会有多连接连接如果访问过大服务器就会出mysql has gone的提法哦。

 其实,希望大家有更多的类,我们一起交流!

本文由10bet手机官网发布于微服架构,转载请注明出处:php入门之连接mysql数据库的一个类,一个常用php

上一篇:没有了 下一篇:没有了
猜你喜欢
热门排行
精彩图文