网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

标题 php简单操作mysql数据库的类
内容
    具体如下:
    <?php
    /**
    * Database class
    *
    * @version: 2.2
    * @revised: 27 may 2007
    *
    **/
    class Database {
    var $host;
    var $name;
    var $user;
    var $pass;
    var $prefix;
    var $linkId;
    function Database($mysql) {
    foreach($mysql as $k => $v){
    $this->$k = $v;
    }
    if(strlen($this->prefix)>0 && substr($this->prefix, -1) !== "_")
    $prefix .= "_";
    $this->prefix = $prefix;
    }
    function getLastID() {
    $id = mysql_fetch_row(mysql_query("SELECT LAST_INSERT_ID()", $this->linkId));
    return $id[0];
    }
    function getPossibleValues($tableA, $whereA) {
    if(gettype($tableA) == "array") {
    $table = "";
    foreach($tableA as $t) {
    $table .= $this->prefix.$t.", ";
    }
    $table = substr($table, 0, -2);
    } else $table = $this->prefix.$tableA;
    if(gettype($whereA) != "array") {
    $whereA = array($whereA);
    }
    $return = array();
    foreach($whereA as $where) {
    $sql = mysql_query("SHOW COLUMNS FROM ".$table." LIKE '%".$where."%'");
    while($arr = mysql_fetch_array($sql)) {
    if(strpos($arr['Type'], 'enum')===0) {
    $vals = substr($arr['Type'], 5, -1);
    } else {
    $vals = substr($arr['Type'], 4, -1);
    }
    $vals = str_replace("'","",$vals);
    $vals = explode(",",$vals);
    $i = 1;
    foreach($vals as $val) {
    $return[$arr['Field']][$i++] = $val;
    }
    $return[$arr['Field']]['default'] = $arr['Default'];
    if($arr['Null'] != "NO") $return[$arr['Field']][0] = NULL;
    }
    }
    return $return;
    }
    function connect() {
    $this->linkId = mysql_connect($this->host, $this->user, $this->pass);
    if(!$this->linkId) {
    return false;
    }
    if(mysql_select_db($this->name, $this->linkId)) return true;
    mysql_close($this->linkId);
    return false;
    }
    function runSelect($tables, $where = "1", $fieldsA = "*", $order = false, $limit = false, $offset = false, $group = false) {
    if(gettype($tables) == "array") {
    $table = "";
    foreach($tables as $t) {
    $table .= $this->prefix.$t.", ";
    }
    $table = substr($table, 0, -2);
    } else $table = $this->prefix.$tables;
    if(gettype($fieldsA) == "array") {
    $fields = "";
    $keys = array_keys($fieldsA);
    if($keys[0] != '0') {
    foreach($keys as $key) {
    $fields .= $key.' AS '.$fieldsA[$key].', ';
    }
    } else {
    foreach($fieldsA as $field) {
    $fields .= $field.', ';
    }
    }
    $fields = substr($fields, 0, -2);
    } else $fields = $fieldsA;
    $query = "SELECT ".$fields." FROM ".$table." WHERE ".$where.
    ($order!== false?" ORDER BY ".$order:($group!==false ? " GROUP BY ".$group : "")).
    ($limit !== false?" LIMIT ".$limit:"").
    ($offset !== false?" OFFSET ".$offset:"");
    return mysql_query($query, $this->linkId);
    }
    function runUpdate($table, $valuesA, $where = "1") {
    if(gettype($valuesA) == "array") {
    $fields = "";
    $values = "";
    $keys = array_keys($valuesA);
    foreach($keys as $key) {
    if($valuesA[$key] !== NULL)
    $values .= "`".$key."`='".str_replace("'",'\'', $valuesA[$key])."',";
    else
    $values .= $key."=NULL,";
    }
    $fields = substr($fields, 0, -1);
    $values = substr($values, 0, -1);
    } else $values = $valuesA;
    $query = "UPDATE ".$this->prefix.$table." SET ".$values." WHERE ".$where;
    if(mysql_query($query,
    $this->linkId))
    return mysql_affected_rows($this->linkId);
    return false;
    }
    function runDelete($table, $where = "1") {
    if(mysql_query("DELETE FROM ".$this->prefix.$table." WHERE ".$where, $this->linkId))
    return mysql_affected_rows($this->linkId);
    return false;
    }
    function runInsert($table, $valuesA, $onDuplicate = NULL) {
    if(gettype($valuesA) == "array") {
    $fields = "";
    $values = "";
    $keys = array_keys($valuesA);
    foreach($keys as $key) {
    $fields .= "`".$key."`, ";
    $values .= ($valuesA[$key]===NULL?"NULL, ":"'".str_replace("'", '\'', $valuesA[$key])."', ");
    }
    $fields = substr($fields, 0, -2);
    $values = substr($values, 0, -2);
    }
    $onDup = "";
    if($onDuplicate != NULL) {
    $onDup = " ON DUPLICATE KEY UPDATE ";
    if(gettype($onDuplicate) == "array") {
    $keys = array_keys($onDuplicate);
    foreach($keys as $key) {
    $onDup .= '`'.$key.'`='.($onDuplicate[$key]===NULL?"NULL,":"'".str_replace("'", '\'', $onDuplicate[$key])."', ");
    }
    $onDup = substr($onDup, 0, -2);
    } else $onDup .= $onDuplicate;
    }
    $query = "INSERT INTO ".$this->prefix.$table.($fields!==NULL?"(".$fields.")":"").
    " VALUES (".$values.")".$onDup;
    if(mysql_query($query, $this->linkId))
    return mysql_affected_rows($this->linkId);
    return false;
    }
    function getCells($table){
    $query = "SHOW COLUMNS FROM `".$table."`";
    $fields = mysql_query($query, $this->linkId) or die('hej');
    return $fields;
    }
    function translateCellName($cellName){
    $sql = $this->runSelect("mysql_cell_translation","mysql_name = '".$cellName."'");
    $row = mysql_fetch_assoc($sql);
    return $row['human_name']?$row['human_name']:'<span>['.$cellName.']</span>';
    }
    function getError() {
    return mysql_error($this->linkId);
    }
    function close()
    {
    mysql_close($this->linkId);
    }
    }
    ?>
随便看

 

在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/20 14:21:47