Antwort #3 am: 27. April 2017, 21:27:19
Hallo Robert,
[...]
folgende Warnmeldung kam heute:
Cannot modify header information - headers already sent by (output started at /www/htdocs/xxxxxxx/shop/includes/header.php:68) in File: /www/htdocs/xxxxxxx/shop/inc/xtc_setcookie.inc.php on Line: 19
Backtrace #0 - /www/htdocs/xxxxxxx/shop/includes/functions/sessions.php called at Line 155
Backtrace #1 - /www/htdocs/xxxxxxx/shop/checkout_success.php called at Line 130
[...]
Das Problem besteht seit modified-shop_2.0.1.0-r10403 und wird durch folgenden Code in der 'includes/functions/sessions.php', den man dort in die Funktion 'xtc_session_destroy()' eingefügt hat, verursacht.
if (isset($_COOKIE[xtc_session_name
()])) { xtc_setcookie
(xtc_session_name
(), '', time()-3600, DIR_WS_CATALOG
, (xtc_not_null
($current_domain) ?
'.'.$current_domain : '')); } Erläuterung:
In der 'checkout_success.php' ca. Zeile 116 wird die Funktion 'xtc_session_destroy()' aufgerufen, dieser Aufruf erfolgt aber nach dem bereits mit dem Senden von HTML-Daten an den Browser begonnen wurde, sofern keine Ausgabepufferung aktiv ist. Anweisungen zum setzen von Cookies werden aber dem HTTP-Header hinzugefügt und der HTTP-Header muss vor den HTML-Daten an den Browser gesendet werden.
Lösungsvorschlag:
Folgenden Code in der 'includes/functions/sessions.php' auskommentieren
if (isset($_COOKIE[xtc_session_name
()])) { xtc_setcookie
(xtc_session_name
(), '', time()-3600, DIR_WS_CATALOG
, (xtc_not_null
($current_domain) ?
'.'.$current_domain : '')); } oder im Admin unter
Erw. Konfiguration ->
Komprimierung ->
GZip Komprimierung einschalten auf
[Ja] setzen.
Gruss
Hanspeter