phpbar.de logo

Mailinglisten-Archive

AW: [php] Datenanbindung über eine Klasse?!

AW: [php] Datenanbindung über eine Klasse?!

David Soria Parra php_(at)_phpcenter.de
Sat, 9 Feb 2002 18:21:07 +0100


Hi,


> Hallo!
>
> Hab da ne Frage zu den Klassen!?
>
> nämlich ich hab in Büchern, webseiten usw. rumgestöbert, kenn
> mich aber bez.
> Klassen und Objekte immer noch nicht so aus ;o(((
>
> Ich würde gern über eine Klasse eine db anbindung starten.. nur wie mache
> ich das? *blöddasitz*

ich hab mir mal auch eben eine solche klasse geschrieben. Hier ist sie:
das einzigste was benötigt wird sind die exterenen variablen

$mysql_host, $mysql_user, $mysql_pwd, $db

die bei mir in einer settings.cfg.php stehen die immer entsprechend included
wird.

<?php
class DB {

        // ----------------------------------------------------------------
        //  Name:           DB
        //  Description:    Constructor! Stellt die Verbindung zum MySQL
Server her
        //  Arguments:      -
        //  Return Value:   -
        // ----------------------------------------------------------------
        function DB() {
                global $mysql_host, $mysql_user, $mysql_pwd, $db;
                if (!$connect =
mysql_connect($mysql_host,$mysql_user,$mysql_pwd)) {
                        echo
$this->_db_error(1,mysql_error(),mysql_errno());
                }
                $this->query("USE $db");
        }

        // ----------------------------------------------------------------
        //  Name:           query
        //  Description:    Führt einen Query auf die Datenbank aus!
        //  Arguments:      -
        //  Return Value:   $res: gibt das Result des Querys zurück
        // ----------------------------------------------------------------
        function query($query) {
                $error_count = 0;
                if (! $res = mysql_query($query)) {
                        $error_count++;
                        if ($error_count == 1) {

$this->_dbError(1,mysql_error(),mysql_errno());
                        }
                        exit;
                }
                return $res;
        }

        // ----------------------------------------------------------------
        //  Name:           fetchArray
        //  Description:    Gibt die Werte eines korrekten Results als
assoziativen Array zurück
        //  Arguments:      $result: gültige Rückgabewert eines Querys
        //  Return Value:   $array: assoziativer Array
        // ----------------------------------------------------------------
        function fetchArray($result) {
                if (!$array = mysql_fetch_array($result)) {
                        if (mysql_errno() != 0) {

$this->_dbError(1,mysql_error(),mysql_errno());
                                exit;
                        }
                }
                return $array;
        }

        // ----------------------------------------------------------------
        //  Name:           fetchObject
        //  Description:    Gibt die Werte eines korrekten Results als
object zurück
        //  Arguments:      $result: gültige Rückgabewert eines Querys
        //  Return Value:   $object: Object
        // ----------------------------------------------------------------
        function fetchObject($result) {
                if (!$object = mysql_fetch_object($result)) {
                        if (mysql_errno() != 0) {

$this->_dbError(1,mysql_error(),mysql_errno());
                                exit;
                        }
                }
                return $object;
        }

        // ----------------------------------------------------------------
        //  Name:           _dbError
        //  Description:    Gibt einen Datenbankfehler aus und beendet das
laufende Script
        //  Arguments:      $no: Error Nummer:
        //                  $error: Fehlermeldung
        //                  $errno: Fehlernummer
        //  Return Value:   -
        // ----------------------------------------------------------------
        function _dbError($no,$error,$errno) {
          switch($no) {
           case 1:
                echo"
                <!--
                Error No.: $errno
                Error Description:
                        $error
                -->
                <font size=2 face=Verdana color=000000>Es tut uns
Leid!<br><br>Ein Fehler im Script oder der Datenbank verhindert das weitere
ausführen des Scriptes!<br>
                \r\n";
                exit;
            break;
            }
        }

}

$DBobj = new DB;

?>


es sind mehrer fehlercodes möglich,etc blablba..hoffe dir nützt das was :D

hoffe das hilft dir weiter

cu


php::bar PHP Wiki   -   Listenarchive