irwan

MySQL Database Class

Nov 15th, 2011
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.75 KB | None | 0 0
  1. <?php
  2.  
  3.   # Configuration
  4.  $config['sql']['host'] = "localhost";
  5.   $config['sql']['user'] = "root";
  6.   $config['sql']['pass'] = "";
  7.   $config['sql']['base'] = "test";
  8.  
  9. ?>
  10.  
  11.  
  12. <?php
  13.   class db_mysql {
  14.  
  15.     var $link;
  16.     var $host;
  17.     var $user;
  18.     var $pass;
  19.     var $base;
  20.  
  21.     function db_mysql() {
  22.       global $config;
  23.       $this->host = $config['sql']['host'];
  24.       $this->user = $config['sql']['user'];
  25.       $this->pass = $config['sql']['pass'];
  26.       $this->base = $config['sql']['base'];
  27.     }
  28.  
  29.     public function connect() {
  30.       $this->link = mysql_connect($this->host, $this->user, $this->pass) or die("<b>Error:</b> Connection to database server cannot be established.");
  31.       mysql_select_db($this->base, $this->link)or die("<b>Error:</b> Connection to database cannot be established.");
  32.     }
  33.  
  34.     public function close() {
  35.       mysql_close($this->link);
  36.     }
  37.  
  38.     private function query($query) {
  39.       $result = mysql_query ($query, $this -> link);
  40.       return $result;
  41.     }
  42.  
  43.     public function strip($string) {
  44.       # For use in querystring - prevents SQL injections
  45.      return "'" . mysql_real_escape_string($string, $this->link) . "'";
  46.     }
  47.  
  48.     public function list_assoc($query) {
  49.       $results = array();
  50.  
  51.       # Querying database
  52.      $resource = $this->query($query);
  53.  
  54.       # Stacking all results in one array
  55.      while ($row = @mysql_fetch_assoc ($resource)) {
  56.         $results[] = $row;
  57.       }
  58.  
  59.       @mysql_free_result($resource);
  60.       return $results;
  61.     }
  62.  
  63.     public function row_assoc($query) {
  64.  
  65.       # Querying database
  66.      $resource = $this->query($query);
  67.  
  68.       # Fetching result
  69.      $result = @mysql_fetch_assoc ($resource);
  70.  
  71.       @mysql_free_result($resource);
  72.       return $result;
  73.     }
  74.  
  75.     public function update($table, $vals, $where) {
  76.       $result = $this->query("UPDATE " . $table . " SET " . $vals . " WHERE " . $where);
  77.       return $result;
  78.     }
  79.  
  80.     public function insert($table, $vals) {
  81.       $result = $this->query("INSERT INTO " . $table . " SET " . $vals);
  82.       return $result;
  83.     }
  84.  
  85.   }
  86. ?>
  87.  
  88.  
  89. <?php
  90.  
  91.   $db = new db_mysql();
  92.   $db->connect();
  93.  
  94.   # List
  95.  $users = $db->list_assoc("SELECT username FROM users ORDER BY username ASC");
  96.   foreach ($users as $user) {
  97.     echo($user['username'] . "<br />");
  98.   }
  99.  
  100.   # One row
  101.  $user = $db->row_assoc("SELECT username FROM users WHERE id = " . $db->strip($_GET['id']));
  102.   echo($user['username']);
  103.  
  104.   # Insert
  105.  $db->insert("users", "username = " . $db->strip($_GET['username']) . ", password = " . $db->strip($_GET['password']));
  106.  
  107.   # Update
  108.  $db->update("users", "username = " . $db->strip($_GET['username']), "id = " . $db->strip($_GET['id']));
  109.  
  110.   $db->close();
  111.  
  112. ?>
Advertisement
Add Comment
Please, Sign In to add comment