Accessing Database with PHP

Post Reply
Tony
Lieutenant
Lieutenant
Posts: 86
Joined: Tue Jul 21, 2009 4:11 pm

Accessing Database with PHP

Post by Tony » Fri Sep 04, 2009 3:06 am

Save this code to a file names phpdb.php

Code: Select all

<?php
class dbClass
{
    var $dbHost;
    var $dbName;
    var $dbUser;
    var $dbPass;
    var $conn;
    var $result  = array();
    var $output  = array();
    var $numrows;
    var $current_query;
     
    function dbClass($dbHost, $dbName, $dbUser, $dbPass)
    {
        $this->dbHost = $dbHost;
        $this->dbName = $dbName;
        $this->dbUser = $dbUser;
        $this->dbPass = $dbPass;
    }
     
    // Open Database connection ---------
     
    function openConnection()
    {
        $this->conn = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass)or die ("Error Connecting to Database!");
        mysql_select_db($this->dbName);
    }
     
    // Close Database Connection --------
     
    function closeConnection()
    {
        mysql_close($this->conn);
    }
     
    // Return Single Row in Array -------
     
    function queryRowArray($sql)
    {
        $result = @mysql_query($sql);
         
        if (!$result)
        { 
            echo "<br>Error: ".mysql_error();
            return(false);
        } 
        else 
        {
            $output = @mysql_fetch_array($result);
            $this->current_query = $sql;
            return($output);
        }
    }
     
    // Return result in 2D Array -------
     
    function query2DArray($sql)
    {
        $datapool  = array();
        $result = @mysql_query($sql);

        for($i=0;$i<$this->queryNumRows($sql);$i++)
        {
            $datapool[$i] = mysql_fetch_array($result);            
        }
       
        $this->current_query = $sql;
        return $datapool;
    }
     
    // Return Row Count -------
     
    function queryNumRows($sql = "")
    {
        if ($sql == "")
        {
            $sql = $this->current_query;
        }
        
        $result = @mysql_query($sql);
         
        if (!$result)
        { 
            echo "<br>Error: ".mysql_error();
            return(false);
        } 
        else 
        {
            $numrows = @mysql_num_rows($result);
            return($numrows);
        }
    }
     
    // Return Column Count --------
     
    function queryNumCols($sql = "")
    {
        if ($sql == "")
        {
            $sql = $this->current_query;
        }

        $result = @mysql_query($sql);
         
        if (!$result)
        { 
            echo "<br>Error: ".mysql_error();
            return(false);
        } 
        else 
        {
            $numcols = @mysql_num_fields($result);
            return($numcols);
        }
    }
     
    // Insert Or Update -------
     
    function execCommand($sql)
    {
        $result = mysql_query($sql)or die("<br><br>Error:".mysql_error()."<br><br>");
        return $result;
    }

    // Show list of tables in database ----------------

    function showTables()
    {
        $datapool  = array();
        $result = @mysql_query("SHOW TABLES;");

        for($i=0;$i<mysql_num_rows($result);$i++)
        {
            $datapool[$i] = mysql_fetch_row($result);
        }

        return $datapool;
    }

    // Show list of databases -------------------------

    function showDatabases()
    {
        $datapool  = array();
        $result = @mysql_query("SHOW DATABASES;");

        for($i=0;$i<mysql_num_rows($result);$i++)
        {
            $datapool[$i] = mysql_fetch_row($result);
        }

        return $datapool;
    }
     
    // Get Latst Insert ID ---------------------------
     
    function getLastInsertID()
    {
        $result = @mysql_query("SELECT LAST_INSERT_ID();");
         
        if (!$result)
        { 
            echo "<br>Error: ".mysql_error();
            return(false);
        } 
        else 
        {
            $output = @mysql_fetch_array($result);
            return($output[0]);
        }
    }
     
    // Return Column Information ----------------------
     
    function getColumnInformation($sql)
    {
        $datapool  = array();
        $result = @mysql_query("SHOW COLUMNS FROM ".$sql.";");

        for($i=0;$i<mysql_num_rows($result);$i++)
        {
            $datapool[$i] = mysql_fetch_row($result);            
        }
       
        $this->current_query = "SHOW COLUMNS FROM ".$sql.";";
        return $datapool;
    }

    // ------------------------------------------------
}

// End Of Database Class -------------------------------

?>
Example Usage:

Code: Select all

include('phpdb.php');
$a = new dbClass($dbserver,$dbname,$dbuser,$dbpass);
$a->openConnection();

$result = $a->query2DArray("SELECT * from table");
$a->closeConnection();
 
If there is substitue directly then substitute the db details from the config file.
Post Reply

Return to “PHP & MySQL”