MySQL Class for PHP
<?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; } } } ?>
Short link to this page: vtwo.org/168985680
Comments
No comment here.