Revision: 22674
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at January 19, 2010 06:30 by jrgp
Initial Code
<?php // manages mysql connection class SQL { private $conn, $lastq; public $query_count = 0; // constructor. connects upon class formation. function SQL ($server, $user, $pw, $db, $persist) { // connect $this->conn = ( $persist ? @mysql_pconnect($server, $user, $pw) : @mysql_connect($server, $user, $pw)) or exit ("Error Connecting to MySQL: ".mysql_error()."\n"); // select db @mysql_select_db($db, $this->conn) or exit ("Error Selecting MySQL DB: ".mysql_error() . "\n"); return true; } // run a query function query($q) { // run it $this->lastq = @mysql_query($q, $this->conn) or $this->error_message ("Query Error: ".mysql_error()."\n"); // increment query count $this->query_count++; // return result return $this->lastq; } // run an unbuffered query. (used only a few times) function query_unbuff($q) { // run it $this->lastq = @mysql_unbuffered_query($q, $this->conn) or $this->error_message ("Query Error: ".mysql_error()."\n"); // increment query count $this->query_count++; // return result return $this->lastq; } // free a result function free($r) { @mysql_free_result($r); } // free last query result function freelast() { if (is_resource($this->conn) && is_resource($this->lastq)) @mysql_free_result($this->lastq); } // get result as a numerical array function fetch_row($r = null) { $r = @$r ? $r : $this->lastq; return @mysql_fetch_row($r); } // get result as a associative array function fetch_assoc($r = null) { $r = @$r ? $r : $this->lastq; return @mysql_fetch_assoc($r); } // close mysql connection function close() { if (is_resource($this->conn)) mysql_close($this->conn); } // escape function prot($s) { return ctype_digit($s) ? $s : mysql_real_escape_string($s, $this->conn); } // last id function lastid() { return mysql_insert_id($this->conn); } // rows affected by last update/replace/delete/insert function affected_rows() { return mysql_affected_rows($this->conn); } // show error message function error_message() { // halt whilst showing the message exit ("MySQL Error: \n".mysql_error($this->conn)."\n"); } // are we connected? function is_connected() { return is_resource($this->conn); } // return number of results function num($r) { return mysql_num_rows($r); } }
Initial URL
Initial Description
Every MySQL class for PHP I've seen so far has been an epic disappointment. This will not lead you to feel the same way. Enjoy!
Initial Title
MySQL Interface Class
Initial Tags
mysql, class, php
Initial Language
PHP