Seite 1 von 2

Ein MOD Problem nach Update

Verfasst: 14.12.2008 19:43
von Nordlicht2001
Hallo zusammen,

ich weiß nicht, ob ich hier richtig bin, ggf. bitte verschieben.

ich habe das Update von 3.0.3 auf 3.0.4 (zunächst auf einem lokalen Server zu Hause) gemacht. Das lief auch alles gut.

Lediglich in der Datei includes/session.php gibt es fünf Konflikte. Diese Datei wurde (u.a.?) von einem MOD verändert, der das automatische Umschalten zwischen Sommer- und Winterzeit übernimmt. Lasse ich die Datei so bestehen, wie das Update es möchte, funktioniert das Forum, aber die automatische Zeitumstellung funktioniert nicht mehr. Schreibe ich die Änderungen wieder zurück, gibt es eine Menge php Fehlermeldungen.

Der MOD stammt von die und heißt Automatische Sommerzeit.

Hat jemand schon auf 3.0.4 upgedatet und diesen MOD dringehabt?

Grüße,
Rüdiger

Verfasst: 14.12.2008 20:18
von Dr.Death
Hi,

ich glaube das MOD ist momentan nicht funktionsfähog unter 3.0.4, da die Datei includes/sessions.php ein wenig anders aussieht als vorher.

Verfasst: 15.12.2008 00:36
von franki
Also laut Codechange hat die session.php keine Änderungen.
Demnach nur Language-Files und Style-Files.

Verfasst: 15.12.2008 03:19
von tas2580
In den Codechanges stehen nur die Änderungen für Sprachdateien und Templates. Änderungen in den PHP Dateien stehen nicht in den Codechanges.

Gruß Tobi

Verfasst: 15.12.2008 05:57
von franki
[BTK] Tobi hat geschrieben:In den Codechanges stehen nur die Änderungen für Sprachdateien und Templates. Änderungen in den PHP Dateien stehen nicht in den Codechanges.

Gruß Tobi
Also in der Codechange von 3.0.1 auf 3.0.2 waren es 56 php-Dateien
bei denen Änderungen gemacht werden mussten.

Verfasst: 15.12.2008 18:20
von MartectX
Ich habe die Lösung hier gepostet.

Verfasst: 16.12.2008 00:00
von Nordlicht2001
Hallo MartectX,

ich habe Deine Anweisungen ausgeführt, die letzte große Änderung in der session.php zurückgenommen und die Zeilen eingefügt, auf die Du verlinkt hast.

Zwar wird jetzt die Zeit korrekt angezeigt, oberhalb des Forums kommen aber jetzt folgende Meldungen:

[phpBB Debug] PHP Notice: in file /includes/session.php on line 2102: strtr() [function.strtr]: The second argument is not an array
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3796: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3184)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3798: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3184)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3799: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3184)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3800: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3184)

Auch wenn sich die meisten Meldungen auf die functions.php beziehen, sind diese Meldungen erst nach den Änderungen an der session.php aufgetaucht.

Grüße,
Rüdiger

Verfasst: 16.12.2008 00:28
von MartectX
Nordlicht2001 hat geschrieben:[phpBB Debug] PHP Notice: in file /includes/session.php on line 2102: strtr() [function.strtr]: The second argument is not an array
Poste mal die Zeilen 2100 - 2105 der includes/session.php.

Verfasst: 16.12.2008 22:48
von Nordlicht2001
Hallo,

hier sind die besagten Zeilen:

Code: Alles auswählen

2100	$format = substr($format, 0, strpos($format, '|')) . '||' . substr(strrchr($format, '|'), 1);

2102			return str_replace('||', $this->lang['datetime']['YESTERDAY'], strtr(@gmdate($format, $gmepoch + $this->timezone + $dstemp), $lang_dates));
2103		}

2105		return strtr(@gmdate($date_cache[$format]['format_long'], $gmepoch + $date_cache[$format]['zone_offset']), $date_cache[$format]['lang']);
2101 und 2104 sind Leerzeilen, also sind es nur drei Zeilen mit Code.

Grüße,
Rüdiger

Verfasst: 17.12.2008 03:10
von MartectX
Nordlicht2001 hat geschrieben:hier sind die besagten Zeilen:

Code: Alles auswählen

2102			return str_replace('||', $this->lang['datetime']['YESTERDAY'], strtr(@gmdate($format, $gmepoch + $this->timezone + $dstemp), $lang_dates));
Du hast einen Einbaufehler gemacht, da $dstemp in der aktualisierten Version nicht mehr vorkommen darf.