Se connecter à des bases de données MySQL à l'aide de PHP programmation orientée objet concept

Je suis en train d'écrire une classe et une poignée de fonctions pour se connecter à la base de données et de récupérer les informations à partir des tables. Je suis allé dans les posts précédents ayant les mêmes titres, mais la plupart d'entre eux ont été écrites en utilisant les fonctions de mysql et je suis à l'aide de fonctions mysqli.

Je veux quelqu'un qui peut passer à travers ce simple script et laissez-moi savoir où je fais mon erreur.

C'est mon class.connect.php:

<?php

    class mySQL{
        var $host;
        var $username;
        var $password;
        var $database;
        public $dbc;

        public function connect($set_host, $set_username, $set_password, $set_database)
        {
            $this->host = $set_host;
            $this->username = $set_username;
            $this->password = $set_password;
            $this->database = $set_database;

            $this->dbc = mysqli_connect($this->host, $this->username, $this->password,           $this->database) or die('Error connecting to DB');        
        }

        public function query($sql)
        {
            return mysqli_query($this->dbc, $sql) or die('Error querying the Database');
        }

        public function fetch($sql)
        {        
            $array = mysqli_fetch_array($this->query($sql));          
            return $array;
        }

        public function close()
        {
            return mysqli_close($this->dbc);
        }
    }
    ?>

C'est mon index.php:

<?php
        require_once ("class.connect.php");

        $connection = new mySQL();

        $connection->connect('localhost', 'myDB', 'joker', 'names_list');
        $myquery = "SELECT * FROM list";
        $query = $connection->query($myquery);        

        while($array = $connection->fetch($query))
        {
            echo $array['first_name'] . '<br />';
            echo $array['last_name'] . '<br />';                
        }

        $connection->close();
?>

Je reçois le message d'erreur indiquant que Error querying the Database.

Je vous recommande d'utiliser PDO, au lieu de mysqlI_* fonctions.

OriginalL'auteur 125369 | 2011-12-12