|
|||
OOP Problem - class Email
Hi Leute,
ich wollte heute mal wieder etwas in PHP programmieren und dabei wollte ich auf die OOP zurückgreifen. Projekt ist "noch" ein Email Script. Bisher sieht das Kontaktformular schlicht gehalten aus. Dies ist auch so gewollt, denn mir geht es im wesentlichen Sinne eher darum etwas die OOP kennen zu lernen. Das Kontaktfomular wie folgt: PHP-Code:
hier die Email Klasse in Email.php PHP-Code:
Außerdem hätte ich noch eine Frage: Funktioniert der Konstruktor wie ich ihn möchte überhaupt? Wäre für Hilfe dankbar MfG Matze $to wegen Spamgefahr/angst ^^ geändert. /* --------------------------------------------------------------------------------------------------------------------------------------- */ Ich habe es jetzt soweit hinbekommen, dass die Email versendet wird: PHP-Code:
PHP-Code:
Dennoch verstehe ich nicht warum ich meine klasseninternen Variablen $subject und $text nicht in dieser Form verwenden kann - sondern nur mittels $this->subject bzw. $this->text!??? Außerdem wird mir jetzt der Return von _sendEmail() nicht mehr zurückgeben!? Wenn ich print $email schreibe wird nur "Object" ausgegeben. Wie bekomme ich den Return "ausgegeben"? Vielen Dank schon im Voraus! MfG Matze (ist !== richtig?)
__________________
Geändert von ct2oo4 (31.08.2007 um 20:13 Uhr) |
Sponsored Links |
|
||||
Zitat:
In Java ist es prinzipiell kein Problem, in PHP muss man allerdings hierbei strikt unterscheiden. Dafür darf man ansonsten eh schlampen wie man will xD Zitat:
Ein Konstruktor liefert NIE einen Wert zurück! Er dient lediglich dazu ein Objekt (in diesem Fall die Klasse Email) zu instanziieren! Hier schlägt auch wieder die schlampige Syntax von PHP zurück, da es keine strikte Trennung der Datentypen gibt! Vergleich zu Java: Code:
// "Normale" Methode die einen String zurückgibt // Syntax: Sichtbarkeit - Typ des Rückgabewerts - Methodenname public String methode() { return new String(); } // Konstruktor // Syntax: Sichtbarkeit - Methodenname public Klassenname() {} Zitat:
PHP-Code:
PHP-Code:
Zitat:
Es ist allerdings erschreckend dass du innerhalb der Klasse auf diesselbe Klasse statisch zugreifen möchtest ... oÔ ( Email::_sendEmail() ) Probier doch mal das: PHP-Code:
PHP-Code:
Hoffe ich konnte dir OOP hiermit etwas näher bringen. Viel Spaß noch beim Programmieren |
Sponsored Links |
|
|||
Ahh... ja danke! Du hast mir sogar sehr geholfen! Jetzt funktioniert es .
Das mit dem Return im Konstruktor habe ich aus einem PEAR Package (Text_Password). Ich dachte damit könnte man erzwingen, dass die komplette Klasse "abgearbeitet" wird. So in der Art, dass sobald man $irgendwas = new Email(wert, wert, ...); schreibt, es diese auch sofort versendet, ohne erst eine weiter Funktion à la $irgendwas->_sendEmail aufrufen zu müssen. Aber nun weis ich ja, dass dies nicht möglich ist . auszug aus dem PEAR Package "Text_Password": Author: Martin Jansen und Olivier Vanhoucke PHP-Code:
Kann es sein das du JAVA "liebst"? Danke nochmal!!! MfG
__________________
|
|
|||
Bitte gerne
Zitat:
Kann ich dir nur empfehlen wenn du auch mal "richtige" Software programmieren möchtest. |
|
|||
Ich möchte demnächst eher mit C++ anfangen und mich bereits jetzt auf mein Studium vorbereiten (Elektrotechnik)
__________________
|
|
|||
Würdest du das mit dem "Error-Level" etwas ausführlicher beschreiben? die Docu (php.net) weis dazu nix.
Könnte mir auch jmd nochmal erklären warum ich === und nicht == schreiben muss? Ich hatte das schon mal irgendwo gelesen, den Link dazu habe ich leider verlegt. Danke schon im Voraus. MfG
__________________
Geändert von ct2oo4 (31.08.2007 um 20:15 Uhr) |
|
||||
Ach doch, die Doku kennt das schon
PHP: error_reporting - Manual Zum Testen setz ich es meist so: PHP-Code:
|
|
||||
Zitat:
PHP-Code:
__________________
CSS-FAQ beantwortet die meisten Fragen | Retro coding gegen Divitis | Code validieren & posten für Hilfe |
Sponsored Links |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Mitwachsender Content und Footer Problem | Bentham | CSS | 5 | 19.09.2010 12:49 |
IE 7: Zoom Problem, Höhen Problem, Text problem | Cu Chullain | CSS | 4 | 02.09.2010 14:56 |
Class Variablen Problem | rs-web | Serveradministration und serverseitige Scripte | 5 | 04.06.2010 11:49 |
Ein kleines OOP Problem mit Klassen etc. | ct2oo4 | Serveradministration und serverseitige Scripte | 24 | 06.08.2007 17:29 |
Problem mit JavaScript und OOP | DoktorW | Javascript & Ajax | 4 | 11.11.2006 21:27 |