This is a MySQL class I use and I wanted to get everyone's thoughts on how/if I can improve it. This is for MySQL only. I don't need to make it compatible with other databases. I'm curious what you all think.

Thanks,
Jay

Class:
------
<?php

// Standard MySQL class
class do_mysql
{       
        // Constructor
        function __construct()
        {
                $this->do_mysql();
        }
        
        // Destructor
        function __destruct()
        {
                //$this->close();
        }
        
        function do_mysql()
        {
                $this->login = '';
                $this->pass = '';
                
$this->link = @mysql_connect('localhost', $this->login, $this->pass) or die('Could not connect to the database.');
        } // End do_mysql

        // Functions    
        function close()
        {
                if ($this->link)
                {
                        mysql_close($this->link);
                        unset($this->link);
                }
        } // End close
        
        function fetch_array()
        {
                return mysql_fetch_array($this->result);
        } // End fetch_array
        
        function last_id()
        {
                return mysql_insert_id($this->link);
        } // End last_id
                
        function num_rows()
        {
                return mysql_num_rows($this->result);
        } // End num_rows
        
        function process($database = '')
        {
                if (is_null($this->query))
                {
                        die('Error:  Query string empty.  Cannot proceed.');
                }
                        
$this->db = @mysql_select_db($database, $this->link) or die("Database Error: Couldn't select $database <br />" . mysql_error()); $this->result = @mysql_query($this->query, $this->link) or die('Database Error: Couldn\'t query. <br />' . mysql_error() . "<br /><br /> $this->query");
        } // End process
        
        function sanitize(&$ref)
        {
                $ref = mysql_real_escape_string($ref);
        } // End sanitize
        
} // End do_mysql

?>


Sample usage:
$value = 'value';
$sql = new do_mysql();
$sql->sanitize($value);
$sql->query = "SELECT * FROM `wherever` WHERE `field` = '$value'";
$sql->process('dbname');
$sql->close();

if ($sql->num_rows())
{
        while ($row = $sql->fetch_array())
        {
                do stuff;
        }
}

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to