SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Webseiten professionell erstellen

Webseiten professionell erstellen zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 14.07.2005, 11:39:03
wollenschlaeger wollenschlaeger ist offline
Anfänger
 
Registriert seit: Mar 2003
Ort: Augsburg
Alter: 48
Beiträge: 116
Klasse in Klasse aufrufen

Hallo Zusammen,

ich bekomme folgende Fehlermeldung:

Fatal error: Call to a member function on a non-object in /srv/www/htdocs/web5/html/singles/classes/class.benutzer.php on line 146

Ich rufe in einer Klasse Benutzer eine Funktion in der Klasse mailen auf. Mein Code sieht wie folgt aus:

Die header.php wird bei jedem Seitenaufruf zuerst gestartet
PHP-Code:
  include("classes/class.db.php");
  include(
"classes/class.benutzer.php");
  include(
"classes/class.mailen.php");

  
$d = new datenbankverbindung();
  
$mailen = new mailen();
  
$benutzer = new benutzer(); 
Das ist der Aufruf in der passwort.php Datei. Dort kann man sich einfach ein neues Passwort zuschicken lassen.

PHP-Code:
if($benutzer->get_new_passwort($email)) 
Nach erfolgreicher Vergabe des neuen Passwortes in der Klasse benutzer soll abschließend ein Passwort mit dem neuen Passwort verschickt werden:
PHP-Code:
$mailen->send_email($empfaenger,$absender,$subject,$message); 
Die Klasse Mailen enthält dann die folgende Funktion:

PHP-Code:
function send_email($empfaenger,$absender,$subject,$message
Füge ich die Funktion in die benutzer-Klasse ein kann ich sie aufrufen und es wird korrekt die Email verschickt.

passwort.php und header.php liegen im Hauptverzeichnis. Die Klassen im Unterverzeichnis classes.

Danke für eure Hilfe.

Grüsse
Roland
Mit Zitat antworten
  #2  
Alt 14.07.2005, 12:12:51
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
AW: Klasse in Klasse aufrufen

> Ich rufe in einer Klasse Benutzer eine Funktion in der Klasse mailen auf.

wo ist dazu der code?

dann machst du bitte, bevor du sie aufrufst:

$mailen = new mailen();

und dann $mailen->send_email();

oder wo ist jetzt das problem?
Mit Zitat antworten
  #3  
Alt 14.07.2005, 12:32:54
wollenschlaeger wollenschlaeger ist offline
Anfänger
 
Registriert seit: Mar 2003
Ort: Augsburg
Alter: 48
Beiträge: 116
AW: Klasse in Klasse aufrufen

Wie die Klassen in header included und instanziert werden, habe ich aufgelistet.

Die Funktion $mailen->send_email() rufe ich aus einer Funktion in der Klasse benutzer auf.

Geändert von wollenschlaeger (14.07.2005 um 12:33:44 Uhr)
Mit Zitat antworten
  #4  
Alt 14.07.2005, 13:32:47
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Klasse in Klasse aufrufen

Zitat:
Zitat von wollenschlaeger
Die Funktion $mailen->send_email() rufe ich aus einer Funktion in der Klasse benutzer auf.
Woher sollte in der Methode der Klasse Benutzer denn die Instanz $mailen bekannt sein, wenn du diese außerhalb der Klasse definierst?
Mit Zitat antworten
  #5  
Alt 14.07.2005, 14:05:32
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
AW: Klasse in Klasse aufrufen

PHP-Code:
class Foo() {

function 
bar() {

echo 
$foobar;

}

}

$foobar "test";

$foo = new Foo();

$foo->bar(); 
schon mal das probiert? warum sollte es bei instanzen anders sein als bei variablen?

http://php3.de/manual/de/language.variables.scope.php hilft vielleicht auch weiter.

edit:

Zitat:
wo ist dazu der code?
Zitat:
Die Funktion $mailen->send_email() rufe ich aus einer Funktion in der Klasse benutzer auf.
da stimmt was nicht.

Geändert von feuervogel (14.07.2005 um 14:06:57 Uhr)
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP Klasse: Module hinzuladen => Realisation mad-boy PHP für Fortgeschrittene und Experten 2 02.08.2004 11:39:48
Andere Klasse aus Klasse aufrufen NanoCyte PHP für Fortgeschrittene und Experten 22 28.06.2004 22:24:53
Blätterfunktion als Klasse! Funjoy PHP Entwicklung und Softwaredesign 0 25.06.2004 00:45:04
Methoden in Klassen includen bzw. ausserhalb der Klasse definieren darius PHP für Fortgeschrittene und Experten 6 31.12.2003 11:32:42
Klasse als Funktionencontainer this::Funktion? Greg G PHP für Fortgeschrittene und Experten 3 19.02.2003 09:09:49


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:52:57 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt