You are not logged in.

wcf.regNote.message

Prometheus

Administrator

  • "Prometheus" started this thread

Posts: 3,278

  • Send private message

1

Monday, August 20th 2007, 11:47pm

PHP Klassen instanzieren (nesting) Verständnisproblem

Ich baue grade an einem neuen Projekt wo ich dieses mal alles selbst erstellen möchte. Damit ich von Anfang an keine Fehler mache bzw. mir nicht unnötig mehr Arbeit mache habe ich mir überlegt ich baue mir eine Klasse als Basis und instanziere darin alle anderen Klassen.

Ich habe also als Beispiel die Klasse "Projekt" als Basis. Darin instanziere ich nun die Klassen "class_db", "class_image", "class_mail" damit ich alle Funktionen aus allen Klassen immer und überall nutzen kann ohne irgendwelche Klassen laden zu müssen. Ich include also immer nur meine Basisklasse und hab sofort alles da.
Irgendwie hab ich da nur jetzt entweder einen Denkfehler bei der Instanzierung der Klassen oder aber ich wende das ganze einfach falsch an.
In meiner class_db z.B. habe ich die Funktionen zum Verbindungsaufbau zur DB sowie ganz einfache Funktionen für query's. Dann in meiner class_mail habe ich eine Funktion zum Verifizieren von Mailadressen sowie eine Mailfunktion die Emails zum einen versendet und gleichzeitig in einer DB speichern soll. Hier ist nun der erste Knackpunkt.
Meine Funktion für query's sieht folgendermaßen aus.

PHP Source code

1
2
3
4
function query($sql) {
$result mysql_query($sql$this->dbhandle) or die ("Query ungültig!".mysql_error());
return $result;
}

Diese Funktion nutze ich nun in meiner class_mail wie gesagt in meiner Mailfunktion. In meinem im Browser aufgerufenen Skript gibt es also jetzt irgendwo einen Aufruf der die Mailfunktion auslöst und dabei geht dann irgendwas schief. Ich bekomme keine Fehlermeldung aber die Mail wird nicht in die DB geschrieben. Kann das sein das ich die Klasse für die DB zuerst instanzieren muss um die Funktionen darin in einer anderen Klasse die instanziert wird nutzen zu können? Oder muss ich dem beim Aufruf der Mailfunktion irgendwie mitgeben welche Klassen der benutzen soll oder sowas?

Oder hat jemand einen Vorschlag wie man sowas wesentlich leichter machen kann? Oder anders gesagt gibt es die Möglichkeit die Klassen wie ich das vor habe zu verschachteln ohne auf die Reihenfolge achten zu müssen?
Jedwege Anfragen bitte an Technomausi oder ShaoKhan richten. Dieses Konto ist und bleibt inaktiv.

wcf.user.socialbookmarks.titel