host = $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;
}
}
?>