Seite 1 von 2
undefined function: phpbb_clean_username() nach Update
Verfasst: 12.12.2004 12:24
von A.Topal
URL:
http://firefox.uni-duisburg.de/forum
Template:
Subsilver
MODs:
Keine
phpBB-Version:
2.0.11
PHP-Version:
4.3.9-1
Update von:
Von 2.0.10 nach 2.0.11
Nach Problemlösung gesucht:
Ja, mit "phpbb_clean_username"
Problembeschreibung:
Seit dem Update von 2.0.10 auf 2.0.11 kann sich kein Anwender mehr einloggen. Das Registrieren bereitet aber keine Probleme. Beim Login-Versuch wird eine weiße Seite mit folgender Fehlermeldung angezeigt.
Fatal error: Call to undefined function: phpbb_clean_username() in /var/www/forum/login.php on line 57
Ich hab bereits die Datei login.php erneut hochgeladen. Sie ist identisch mit der Datei aus den Installationsdateien. Das selbe gilt für die Datei functions.php, in der besagte Funktion definiert wird.
Probeaccount:
Name: testuser23
Passwort: test23
Verfasst: 12.12.2004 12:30
von Christian_W
Da fehlt wohl die Funktion phpbb_clean_username in der includes/functions.php
Schau Dir die Datei nochmal an ob Du die Änderungen daran gemacht und die geänderte Datei dann auch hochgeladen hast.
Gruß Christian
Verfasst: 12.12.2004 12:33
von Nico Haase
ist die datei functions.php im richtigen verzeichnis in der richtigen version gespeichert? wenn ja, bau mal in die login.php unter
folgendes ein:
Code: Alles auswählen
if (!function_exists('phpbb_clean_username'))
{
function phpbb_clean_username($username)
{
$username = htmlspecialchars(rtrim(trim($username), "\\"));
$username = substr(str_replace("\\'", "'", $username), 0, 25);
$username = str_replace("'", "\\'", $username);
return $username;
}
}
Verfasst: 12.12.2004 12:48
von A.Topal
Merkwürdig, so klappt es. Aber die Funktion ist ganz sicher in functions.php vorhanden. Ich hab die Datei mal ins Netz gestellt. Es ist wirklich die Originaldatei in phpBB 2.0.11
http://firefox.uni-duisburg.de/functions.txt
Danke für die Hilfe und Gruß
A. Topal
Verfasst: 12.12.2004 13:16
von Christian_W
Die Datei ist in Ordnung.
Bist Du ganz sicher, dass sie auch verwendet wird?
Um das festzustellen kannst Du folgendes machen:
Code: Alles auswählen
---- öffne ----
includes/functions.php
----- finde -----
<?php
----- füge danach ein -----
echo 'OK, wird verwendet';
Ganz oben sollte dann "OK, wird verwendet" stehen.
Die Funktion in die login.php einzubauen ist nicht besonders sinnvoll:
http://firefox.uni-duisburg.de/forum/se ... or=A.Topal
Gruß Christian
Verfasst: 12.12.2004 14:02
von Nico Haase
da hast du natürlich recht, christian, das widerspricht dann auch dem sinn einer funktion.
Verfasst: 12.12.2004 15:20
von A.Topal
Irgendwas scheint nicht zu stimmen. Es ist wieder nicht möglich, sich einzuloggen. Diesmal scheint es Probleme zu geben, weil die Funktion zweimal definiert wird. Jedenfalls habe ich jetzt mehrfach -auch beim Anzeigen der Übersicht- die Fehlermeldung
Warning: Cannot modify header information - headers already sent by
Die Testausgabe funktioniert aber. Das ist merkwürdig, weil das Einloggen gerade noch funktioniert hat und ich seit dem nichts mehr gändert hab.
Gruß
A. Topal
Verfasst: 12.12.2004 15:26
von Nico Haase
du hast die fehlermeldung genau am interessantesten punkt abgeschnitten: jetzt käme ja die erste zeile, in der eine ausgabe erfolgt. überprüf mal, was dort ausgegeben wird - das kann schon ein leerzeichen oder so sein, was zu dem fehler führt
Verfasst: 12.12.2004 15:31
von A.Topal
Es sind mehrere Fehlermeldungen. Die sieht man gleich, wenn man das Forum aufruft. Ich wollte den Thread hier nicht zumüllen, aber wenn's erlaubt ist:
OK, wird verwendet
Warning: Cannot modify header information - headers already sent by (output started at /var/www/forum/includes/functions.php:3) in /var/www/forum/includes/sessions.php on line 305
Warning: Cannot modify header information - headers already sent by (output started at /var/www/forum/includes/functions.php:3) in /var/www/forum/includes/sessions.php on line 306
Warning: Cannot modify header information - headers already sent by (output started at /var/www/forum/includes/functions.php:3) in /var/www/forum/includes/page_header.php on line 475
Warning: Cannot modify header information - headers already sent by (output started at /var/www/forum/includes/functions.php:3) in /var/www/forum/includes/page_header.php on line 477
Warning: Cannot modify header information - headers already sent by (output started at /var/www/forum/includes/functions.php:3) in /var/www/forum/includes/page_header.php on line 478
Gruß
A. Topal
Verfasst: 12.12.2004 15:37
von Henne
Liegt evtl daran, dass du in der functions.php ne Ausgabe erzeugst.
Was passiert denn, wenn du das wieder rausnimmst?