Seite 1 von 1

Fehler beim Aktualisieren des Templates

Verfasst: 12.09.2009 01:26
von WhiteSun
Nabend allesamt,

habe folgendes Problem. Wenn ich im >ACP< unter >Styles< den Punkt >Templates< auswähle und dort bei meinem derzeit aktiven Style im Template auf >Aktualisieren< klicke, erscheint folgende Meldung:

Code: Alles auswählen

[phpBB Debug] PHP Notice: in file /includes/acp/acp_styles.php on line 2538: fread() [function.fread]: Length parameter must be greater than 0
[phpBB Debug] PHP Notice: in file /includes/acp/acp_styles.php on line 2538: fread() [function.fread]: Length parameter must be greater than 0
Woran kann das liegen? Im Folgenden ein Ausschnitt aus der betreffenden Datei und der entsprechenden Zeile:

Code: Alles auswählen

$template_data = fread($fp, filesize("{$phpbb_root_path}styles/$template_path$pathfile$file"));
Die betreffende Zeile ist schon von Anfang an in der Datei enthalten, hatte bis vor kurzem auch noch keine Probleme gemacht.
Ebenfalls hatte ich einen Fehler in der functions.php, welchen ich aber wohl beheben konnte. Habe entsprechende Codezeile gelöscht und später wieder ergänzt. dadurch war der Fehler behoben? Kann ich davon ausgehen, dass dieser nur vorübergehend behoben ist?
Könnt ihr mir bei meinem Problem weiterhelfen?
Danke euch schonmal im Vorraus.


Wünsche noch einen schönen Abend,
Gruß WhiteSun

Re: Fehler beim Aktualisieren des Templates

Verfasst: 12.09.2009 13:04
von cYbercOsmOnauT
Frage: Hast Du in Deinem Templates-Verzeichnis irgendein Datei welches eine Größe von 0Bytes hat?

Erklärung: Die Notice (keine Fehlermeldung sondern eine Anmerkung von PHP) entsteht dadurch dass 0Bytes von einer Datei gelesen werden sollen und PHP meint das eine Größenangabe größer 0 sein muss. Dies entsteht dadurch das erst mit filesize die Größe der Datei ermittelt wird. Ist diese 0Bytes will fread 0Bytes lesen und PHP meckert.

Wenn diese leere Datei unbedingt nötig ist, kannst Du auch folgendermaßen Abhilfe schaffen:
Suche in /includes/acp/acp_styles.php nochmals die Zeile

Code: Alles auswählen

$template_data = fread($fp, filesize("{$phpbb_root_path}styles/$template_path$pathfile$file"));
und ersetze sie durch

Code: Alles auswählen

$size = filesize("{$phpbb_root_path}styles/$template_path$pathfile$file");
$template_data = $size ? fread($fp, $size) : '';
Grüße,
Tekin

Re: Fehler beim Aktualisieren des Templates

Verfasst: 12.09.2009 23:58
von WhiteSun
Frage: Hast Du in Deinem Templates-Verzeichnis irgendein Datei welches eine Größe von 0Bytes hat?
ja habe ich und zwar folgende:
colour_swatch.html
install_body.html

ich weiß nicht, ob die Dateien nötig sind, auch wenn sie nur 0 Bytes haben, daher habe ich den betreffenden Code durch deinen ersetzt. Nun funktioniert wieder alles, ich danke dir ;-)


Wünsche noch einen schönen Abend,
Gruß WhiteSun