kostenloser Webspace werbefrei: lima-city


PHP: Problem bei Klasse und Funktionen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    shakal

    Kostenloser Webspace von shakal

    shakal hat kostenlosen Webspace.

    Mahlzeit.
    Erstmal den Code, den ich bisher hab:

    require_once("db.conf.php");
    
    class DB {
    
    	var $host;
    	var $user;
    	var $pass;
    	var $database;
    	
    	function DB_connect ($db_host="", $db_user="", $db_pass="", $database="Test")
    	{
    		$this->host     = $db_host;
    		$this->user     = $db_user;
    		$this->pass     = $db_pass;
    		
    		if ($this->con = @mysql_connect($this->host,$this->user,$this->pass))
    		{
    			$message = "Verbindung zum Server hergestellt! <br>";
    			return $message;
    			$this->select_db($database);
    		}
    		else
    		{
    			$message = "(Verbindung) Die Verbindung zum MySQL-Server konnte nicht hergestellt werden. MySQL meldet: " . mysql_error() . "<br>";
    			return $message;
    		}
    	}
    
    	
    	function select_db($database)
    	{
    		$this->database = $database;
    		
    		if($this->db = @mysql_select_db($this->database, $this->con))
    		{
    			$message = "Verbindung zur Datenbank hergestellt!<br>";
    			return $message;
    		}
    		else
    		{
    			$message = "(Datenbank) Die Verbindung zur Datenbank konnte nicht hergestellt werden. MySQL meldet: " . mysql_error() . "<br>";
    			return $message;
    		}
    	}
    }
    
    $db_connect = new DB;
    print ($db_connect->DB_connect($db_host, $db_user, $db_pass, $database));


    Mein Problem liegt in folgenden Zeilen:
    if ($this->con = @mysql_connect($this->host,$this->user,$this->pass))
    {
    $message = "Verbindung zum Server hergestellt! <br>";
    return $message;
    $this->select_db($database);
    }

    Normalerweise sollte jetzt mit der Funktion select_db weitergearbeitet werden und eine Verbindung zur Datenbank hergestellt werden und den Erfolg dann melden. Tut es aber nicht.
    Wenn ich aber stattdessen aber am Ende des Code noch folgendes hinzuf?ge
    print ($db_connect->select_db($database));
    dann wird zur Datenbank verbunden und ein Erfolg gemeldet.
    Kann mir jetzt mal wer verraten, warum ich diesen kleinen Befehl am Ende des Codes hinzuf?gen muss, damit zur Datenbank verbunden wird und warum ich nicht der Funktion DB_connect sagen kann, dass sie das automatisch machen soll?
    Verwirrt mich ein bisschen und ich hab gestern oder so erst angefangen ?ber OOP nachzudenken und es auszuprobieren ;)

    Beitrag ge?ndert am 12.05.2006 16:24 von shakal
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Bevor du die Funktion aufrufst, sagst du ja, dass mit "return $message" eine Nachricht zur?ckgegeben werden soll und return beendet eine Funktion nun mal sofort, d.h. alles was danach in dieser Funktion steht, wird nicht mehr ausgef?hrt. Rufe einfach die Funktioni auf, bevor du die Message zur?ckgibst bzw. lass die Message ganz weg und gib true und false zur?ck oder so.
  4. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!