封装的 mysql类, 和sql语句生成类
May 26, 2016 am 08:20 AMhost = $server['host']; $this->user = $server['user']; $this->pwd = $server['pwd']; $this->port = $server['port']; $this->dbname = $server['dbname']; $this->connect(); }//End of function public static function getInstance($server) { if( self::$isConnect ) { return self::$handle; } self::$handle = new self($server); self::$isConnect = true; return self::$handle; }//End of funtion private function connect() { $this->resource = mysql_connect($this->host.':'.$this->port, $this->user, $this->pwd ) or $this->error("connect fail"); mysql_select_db($this->dbname, $this->resource); return true; } private function getSql($sql) { $operate = array('insert', 'delete', 'update', 'select', 'create'); return $sql; } public function query($sql) { $sql = $this->getSql($sql); mysql_query("SET NAMES UTF8"); $query_result = mysql_query($sql, $this->resource) or $this->error("query fail"); return $query_result; } public function getQueryResult($sql) { $query_result = $this->query($sql); $result = array(); if( !$query_result ) { return $result; } while ( $row = mysql_fetch_assoc($query_result) ) { $result[] = $row; } $result['rows'] = mysql_num_rows($query_result); $query_result = null; return $result; } public function getInsertResult($sql) { $query_result = $this->query($sql); if( !$query_result ) { return false; } return mysql_insert_id($this->resource); } public function getUpdateResult($sql) { $query_result = $this->query($sql); if( !$query_result ) { return false; } return mysql_affected_rows($this->resource); } public function getDeleteResult($sql) { return $this->getUpdateResult($sql); } public function close_connect() { self::$handle = null; self::$isConnect = false; mysql_free_result($this->resource); $this->resource = null; } private function error($msg='') { $msg = "$msg--->>".mysql_error(); die($msg); } }//End of class ?>
ログイン後にコピー
2. [文件] DbTool.class.php
primary_key = $primary_key; } } public function getInsertSql($data, $table) { $sql = $key_str = $value_str = ""; foreach($data as $key=>$value) { $key_str .= "{$key}, "; $value_str .= "'{$value}', "; } $key_str = trim($key_str, ', '); $value_str = trim($value_str, ', '); $sql = "INSERT INTO {$table}({$key_str}) VALUES({$value_str})"; $data=null; $key_str=null; $value_str=null; return $sql; } public function getUpdateSql($data, $table) { $pk = $this->primary_key; $id = $data[$pk]; unset($data[$pk]); $sql = $key_value = ""; foreach($data as $key=>$value) { $key_value .= "{$key}='{$value}', "; } $key_value = trim($key_value, ', '); $sql = "UPDATE {$table} SET {$key_value} WHERE $pk='{$id}'"; $data=null; $key_value=null; return $sql; } public function getQuerySql($condition, $table) { $field = empty($condition['field']) ? '*': $condition['field']; $sql = "SELECT {$field} FROM {$table} "; if( isset($condition['where']) ) { $sql .= "WHERE {$condition['where']} "; } if( isset($condition['groupby']) ) { $sql .= "GROUP BY {$condition['groupby']} "; } if( isset($condition['orderby']) ) { $sql .= "ORDER BY {$condition['orderby']} "; } if( isset($condition['limit']) ) { $sql .= "LIMIT {$condition['limit']} "; } $condition=null; return $sql; } public function getDeleteSql($id, $table) { $pk = $this->primary_key; $sql = "DELETE FROM {$table} WHERE $pk='{$id}' "; return $sql; } } ?>
ログイン後にコピー
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

人気の記事
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌

人気の記事
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック
Gmailメールのログイン入り口はどこですか?
7138
9


Java チュートリアル
1534
14


Laravel チュートリアル
1257
25


PHP チュートリアル
1205
29


CakePHP チュートリアル
1155
46

