PHP封裝了一個DB數據庫 mysql 的類

碼頭工人 8年前發布 | 4K 次閱讀 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 &quot;.$this-&gt;tablename.&quot; ($keysql) VALUES($valuesql)");

$id=mysql_insert_id();

//print_r("insert into &quot;.$this-&gt;tablename.&quot; ($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 &quot;.$this-&gt;tablename.&quot; SET ".$keysql.$this->where);

//print_r("UPDATE &quot;.$this-&gt;tablename.&quot; 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']=>

*/

?></pre>

 本文由用戶 admin 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!