کلاس MySQL برای PHP جهت اتصال به پایگاه داده

۲ ماه پیش(به روز شده در ۲ ماه پیش) پی اچ پی(PHP)(کلاس) ۰

کلاس ساده زیر توسط ما طراحی شده که البته از PDO استفاده نشده است اما براحتی قابل ویرایش است. در ضمن کلاس زیر کاملا تست شده و آماده بکار است.

<?php
//VTwo Group - https://vtwo.org
class MySQL {
    var $error = '';
    var $MySQLerror = '';
    var $host = '';
    var $username = '';
    var $password = '';
    var $dbname = '';
    var $conn = 0;
    var $rslt = false;
 
    function __construct($dbname = '') {
        if ($dbname) {
            $this->dbname = $dbname;
        }
    }
 
    public function MySQLerror() {
        return $this->MySQLerror;
    }
 
    public function error() {
        switch ($this->error) {
            case 'db-error':
                return 'DB error.';
            case 'connect-error':
                return 'Internal error.';
            default:
                return $this->error;
        }
    }
 
    public function transaction() {
        $this->query('START TRANSACTION');
    }
 
    public function rollback() {
        $this->query('ROLLBACK');
    }
 
    public function commit() {
        $this->query('COMMIT');
    }
 
    public function connect($dbname = '') {
        if (!$dbname) {
            $dbname = $this->dbname;
        }
 
        $this->conn = @mysql_connect($this->host, $this->username, $this->password);
        $this->MySQLerror = mysql_error();
        if (!$this->conn) {
            $this->error = 'db-error';
        }
 
        $this->select_db($dbname);
    }
 
    public function select_db($dbname) {
        $this->error = '';
 
        $rslt = mysql_select_db($dbname, $this->conn);
        $this->MySQLerror = mysql_error();
        if (!$rslt) {
            $this->error = 'connect-error';
        }
    }
 
    public function escape_string($str) {
        if (get_magic_quotes_gpc()) {
            $str = stripslashes($str);
        }
 
        if (function_exists("mysql_real_escape_string") and $this->conn) //check if this function exists
            {
            $str = mysql_real_escape_string($str, $this->conn);
            $this->MySQLerror = mysql_error();
        }
        else {
            $str = addslashes($str); //for PHP version < 4.3.0 use addslashes
        }
 
        return $str;
    }
 
    public function insert($table, $inserts, $ignore = false) {
        if ($ignore) {
            $ignore = ' IGNORE';
        }
        {
            $ignore = '';
        }
 
        $query = "INSERT$ignore INTO `" . $table . "` ";
        $comma = $keys = $values = '';
        foreach ($inserts as $k => $v) {
            $keys .= "$comma`$k`";
            $values .= "$comma'" . $this->escape_string($v) . "'";
 
            if (!$comma)
                $comma = ',';
        }
 
        $query .= "($keys) VALUES ($values)";
        $this->query($query);
    }
 
    public function update($table, $fields, $where = '') {
        $query = "UPDATE `" . $table . "` SET ";
        $comma = '';
        foreach ($fields as $k => $v) {
            $query .= "$comma`$k`" . " = '" . $this->escape_string($v) . "'";
 
            if (!$comma)
                $comma = ',';
        }
 
        $query .= " WHERE " . $where;
        $this->query($query);
    }
 
    public function delete($table, $where = '') {
        if ($where) {
            $this->query("DELETE FROM `$table` WHERE $where");
        } elseif ($where == 'TABLE') {
            $this->query("DELETE FROM `$table`");
        }
    }
 
    public function query($query) {
        $this->error = '';
 
        $rslt = mysql_query($query, $this->conn);
        $this->MySQLerror = mysql_error();
        if (!$rslt) {
            $this->error = 'db-error';
        }
 
        $this->rslt = $rslt;
        return $rslt;
    }
 
    public function numrows() {
        if ($this->rslt) {
            return mysql_num_rows($this->rslt);
        }
        else {
            return false;
        }
    }
 
    public function fetch() {
        if ($this->rslt) {
            return mysql_fetch_array($this->rslt);
        }
        else {
            return false;
        }
    }
 
    public function free_result() {
        if ($this->rslt) {
            return mysql_free_result($this->rslt);
        }
        else {
            return false;
        }
    }
 
    public function data_seek($row_number = 0) {
        if ($this->rslt) {
            return mysql_data_seek($this->rslt, $row_number);
        }
        else {
            return false;
        }
    }
 
    public function result($row, $field) {
        if ($this->rslt) {
            return mysql_result($this->rslt, $row, $field);
        }
        else {
            return false;
        }
    }
 
    public function lastInsertID() {
        if ($this->rslt) {
            $this->query('SELECT LAST_INSERT_ID()');
            return $this->result(0, 0);
        }
        else {
            return false;
        }
    }
}
?>

صفحات پیشنهادی


کلاس صفحه بندی مطالب یا جداول(pagination)...

با استفاده کلاس pagination می توانید اطلاعات صفحات خود را صفحه بندی نمایید. این صفحه بندی مختص جداول پایگاه داده MySQL است. در کامنت کلاس نحوه استفاده آمده است(به همراه کد css آن). مثال: $variab...


کلاس تبدیل رنگ color conversion...

این کلاس قدرتمند مختص تبدیل رنگ است. در واقع هدف از ایجاد کلاس به گفته سازنده تبدیل رنگ در مدلهای مختلف همانند RGB, HSV, HSL و هگزادسیمال(hexadecimal) است تا در صفحات وب مورد استفاده قرار گیرد: ...


بسته بندی کننده فایلها با کلاس packager class...

پکیجر , کلاسی هوشمند در جهت نگهداری تمامی فایلها و پوشه ها در یک فایل با امکان آنپک کردن است. این کلاس که محتویات فایلها و مشخصات آنها را در یک فایل به همراه سایر کدهای لازم جهت اجرا با کدینگ Base64 ذ...

کلاس Browser.php , کلاسی قدرتمند در جهت شناسایی مرورگر کاربر...

کلاس Browser توسط Chris Schuld نوشته شده و تقریبا تمامی مرورگرها را شناسایی می نماید. از خصوصیات بارز این کلاس امکان شناسایی پلتفورم یا سیستم عامل , ربات یا مرورگر بودن , نسخه مرورگر , تشخیص...

نظر

نظری ثبت نشده است.
captcha image reload