PHP封装了一个DB数据库 mysql 的类

PHP高级技术

<?php





        // 配置数据库

 define('DB_HOST', '127.0.0.1');   //服务器地址

 define('DB_USER', 'root');   //用户名

 define('DB_PASS', '');  //密码

 define('DB_DATABASENAME', 'fenxiao'); //数据库







 class Dbmysql

 { 



    /*

 *变量

 **/

 private $tablename=""; //表名

 private $fieldname="*";

 private $conn;

 private $where;

 private $sql;



 function __construct($tablename)

 {

 //生成一个连接

 $this->conn = mysql_connect(DB_HOST, DB_USER, DB_PASS) or die("connect failed" . mysql_error());  

 //选择数据库

 mysql_select_db(DB_DATABASENAME, $this->conn); 

 //设置编码格式

 mysql_query("SET NAMES utf8");

 //var_dump($conn);

 $this->tablename=$tablename;

 }



 //设置sql语句

 private function setsql($sql)

 {

 $this->sql=$sql;

 }



 //设置条件语句

 public function where($where)

 {

 $this->where=" where ".$where;



 return $this;

 }



 //按指定字段

 public function field($keyword)

 {

 $this->fieldname=$keyword;

 return $this;

 }

 //设置连接查询表

 public function table($table1,$table2,$field,$bool)

 {

 $this->tablename="$table1 LEFT JOIN $table2 ON $table1.$field$bool$table2.$field";

 //print_r($this->tablename);

 return $this;

 }

 

 //设置多表查询

 public function addtable($table1,$table2,$field,$bool)

 {

 $this->tablename.=" LEFT JOIN $table2 ON $table1.$field$bool$table2.$field";

 //print_r($this->tablename);

 return $this;

 }



 //设置连接查询表

 ##SELECT * FROM 【wx_order LEFT JOIN wx_shopcar ON wx_shopcar.oid=wx_order.oid and wx_order.uid=wx_shopcar.uid LEFT JOIN wx_goods ON wx_shopcar.gid=wx_goods.gid】 WHERE wx_order.oid=1 and wx_order.uid=3

 public function settable($sql)

 {

 $this->tablename=$sql;

 //print_r($this->tablename);

 return $this;

 }



 //查询所有数据库 以数组形式输出

 public function select()

 {

    /**

 * 查询数据库中所有的数据

 **/

 $arr=array();

 //执行sql语句

 $result = mysql_query("select ".$this->fieldname." from ".$this->tablename.$this->where, $this->conn); 



 while ($row = mysql_fetch_assoc($result)) {

 

 array_push($arr, $row);

 }



 return $arr; 

 }



 //搜索指定字段数据

 public function find()

 {

 //执行sql语句

 $result = mysql_query("select ".$this->fieldname." from ".$this->tablename.$this->where, $this->conn); 

 $result = mysql_fetch_assoc($result);

 return $result;

 }



 //增加数据到数据库

 public function add($data)

 {

 $keysql='';

 $valuesql='';

 foreach ($data as $key => $value) {

 $keysql.=",`$key`";

 $valuesql.=",'$value'";

 }

 $keysql=substr($keysql, 1);

 $valuesql=substr($valuesql, 1);

 $result=mysql_query("insert into `".$this->tablename."` ($keysql) VALUES($valuesql)");

 $id=mysql_insert_id();

 //print_r("insert into `".$this->tablename."` ($keysql) VALUES($valuesql)");

 return $id;

 }



 //修改数据库的内容

 public function save($data)

 {

 $keysql='';

 $valuesql='';

 foreach ($data as $key => $value) {

 $keysql.=",`$key`='$value'";

 }

 $keysql=substr($keysql, 1);

 //print_r($keysql);

 //echo "<br>";

 $result=mysql_query("UPDATE `".$this->tablename."` SET ".$keysql.$this->where);

 //print_r("UPDATE `".$this->tablename."` SET ".$keysql.$this->where);

 return $result;

 }



 ##删除数据

 public function delete()

 {

 $result=mysql_query("DELETE FROM $this->tablename $this->where");

 //print_r("DELETE FROM $this->tablename $this->where");

 return $result;

 }



 }



/**

* mysql_fetch_row: 返回单列的各字段 [0]=>"111"

* mysql_fetch_field: 取得字段信息。[0]=>   ['name']=>   object

* mysql_fetch_array    返回数组资料。 [0]=>"asasds"   ['name']=>

*/

?>