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

大家讲道理
发布: 2016-11-10 11:14:22
原创
1146人浏览过

<?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']=>
 
*/
 
?>
登录后复制

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号