Seite 1 von 1
Fehlermedlung: Fatal error:
Verfasst: 17.04.2003 12:23
von Fraenky
Was bedeutet diese Fehlermeldung?
Fatal error: Cannot redeclare class template in /usr/local/httpd/htdocs/kunden/***/html/includes/template.php on line 30
THX
MfG
Fraenky
Verfasst: 17.04.2003 17:40
von Chaze
Hast Du vielleicht eine Include Anweisung in eine Schleife eingebunden? Oder versuchst Du die template mehrmals zu includen?
Verfasst: 17.04.2003 19:15
von Fraenky
also die template versuch ich gar nicht zu includen (glaub ich).
ich hab e 2 php dateien. Die eine ist eine login mit eigenem Formular aber mit actio die login.php von phpBB. Wenn ich mich einlogg und dann wieder ins phpbb Forum geh (da bin ich ja dann auch eingeloggt) und von da wieder auf meine Login, dann kommt dieser Fehler.
Hier ist der Code:
Code: Alles auswählen
define("IN_LOGIN", true);
define('IN_PHPBB', true);
$phpbb_root_path = '../';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
$username = $userdata['username'];
$user_rank = $userdata['user_rank'];
if ( $userdata['session_logged_in'] )
{
// eingeloggt
// echo $login['logged_in'];
if ( $user_rank >= 1 )
{
// eingeloggt als KUMPEL
// echo $login['kumpel'];
include('kumpelz.php');
}
else
{
// KEIN Kumpel
echo die($login['no_kumpel']);
}
}
else // Nicht eingeloggt
{
// echo die($login['not_logged_in']);
include('form.php');
$db->sql_close();
}
Die $login['text'] variablen sind nur mit text gefüllt und die hab ich ma ausgelassen, damit man hier durchsieht.
Der gleiche Code ist in der kumpelz.php.
form.php enthält das Login Formular, wo actio=login.php angegeben ist. die Login.php ist die gleiche wie von phpBB. Ich habe da halt nur das verzeichniss angepasst, weil phpBB eins höher liegt:
und das funzt alles auch bloß es kommt die Fehlermeldung, wenn ich das oben beschriebene mach.
Wenn ich aber die Kumpelz.php aufrufe, kommt die fehlermeldung nicht.(!)
hä?
Verfasst: 17.04.2003 19:41
von Fraenky
also ich glaub ich weiß worans liegt..ich include ja die kumpelz.php in die index.php. (das ist das login formular)
In die kumpelz.php include ich wiederum den gleichen Code, der schon in der index.php steht.
da ich jetzt die kumpelz.php in die index.php include, müsste da 2mal der gleich code includet werden.
aber wie geh ich denn einen Umweg? kann man mit php, wenn man eingeloggt ist, sich weiterleiten lassen? index.php includet ja nur die kumpelz.php, wenn bestimmte Anweisungen erfüllt sind. Kann man das includen nicht weglassen und dafür ne weiterleitung bauen?
achja: in der kumpelz.php steht natürlich nicht include kumpelz.php...
Warte auf Antworten...
Verfasst: 17.04.2003 19:52
von Fraenky
gut ich glaub ich führe selbtsgespräche..hihi
wobei wir wieder bei redirect wären..
Frage: welche Datei muss ich includen, damit ich die redirect-funktion aufrufen kann??
Es kommt nämlich diese Fehlermeldung, wenn ich mich in phpBB eingeloggt hab und dann auf meine Login Seite geh. Diese sollte mich eigentlich weiterleiten zu kumpelz.php -mit redirect. (das macht sie auch fein, wenn ich mich auf meine login seite einlogg)
Fatal error: Call to undefined function: redirect() in /
usr/local/httpd/htdocs/kunden/***/html/kumpelz/index.php on line
109
THX
bitte antworte doch einer..
Verfasst: 18.04.2003 00:04
von Mister_X
die redirect Funktion wird in der functions.php definiert. Wenn du noch weitere Fragen hast stelle sie, aus deinem ganzen Text von weiter oben bin ich nicht wirklich schlau geworden

Verfasst: 18.04.2003 18:37
von Fraenky
naja also:
ich habe ne index.php mit diesen Code:
Code: Alles auswählen
define("IN_LOGIN", true);
define('IN_PHPBB', true);
$phpbb_root_path = '../';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
$username = $userdata['username'];
$user_rank = $userdata['user_rank'];
Später wird auch noch die kumpelz.php includet, die auch den Code hat.
So wird --denk ich ma-- alles 2 mal in die selbe datei -nämlich index.php- includet.
So denk ich ma kommt der fehler von wegen template...
Naja und bin ich dann eingeloggt (mit meinem Login Formular -welches action=login.php von phpbb hat) komm ich auch in die kumpelz.php -werde also mit redirect weitergeleitet.
Aber geh ich dann wieder auf phpBB -da bin ich dann auch eingeloggt *logisch*- und dann von da wieder auf die kumpelz/index.php von mir, dann erkennt er die redirect Funktion nicht an -> leitet mich also nicht zu kumpelz.php um.
In der login.php von phpBB habe ich den phpBB_root halt ein verzeichniss höher gesetzt( '../').
Aber irgendwie ist das jetzt egal, da ich jetzt nen JavaScript include, welches mich dann in die kumpelz.php weiterleitet. Egal ob ich von meiner index.php oder der von phpBB komme...
Zwar nicht die eleganteste Lösung, aber es funzt..