Shop - Session cannot be started

  • Ich habe einen Shop eingerichtet, um einige Technik zum Verleih anzubieten. Seit heute bekomme ich eine Fehlermeldung, ohne dass ich etwas bewusst verändert hätte.

    Leider ergeben die Fehlermelfungen für mich keinen Sinn:

    Error/warning occurred. No. = 2 (E_WARNING), msg = session_start(): Session cannot be started after headers have already been sent, file = phar:///www/htdocs/w0184c08/party-dj.com/assets/php/shop/zpshop.phar/core/general/SessionHelper.inc.php, line = 20, is warning = 1.
    1)

    ... und mehr

    Siehe hier: https://www.party-dj.com/verleih/

    Was habe ich falsch gemacht? Reicht Seite löschen und neu hhochladen? Oder habe ich bei den Einstellungen einen Fehler?

    Man sollte sich bewußt sein, dass es immer jemanden gibt, der von einer Sache mehr Ahnung hat, als man selbst - idealerweise kennt man den auch und kann fragen....
    Es gibt keine dummen Fragen - nur dumme Antworten!

  • Hallo,

    ich habe Ihren Beitrag in ein neues Thema verschoben.

    Was Sie da sehen, ist keine Fehlermeldung, sondern nur eine Warnung. Also eine Meldung, die nur informativ angezeigt wird, aber nicht wirklich die Funktionalität beeinträchtigt.

    Vermutlich wurden vom Provider die PHP-Einstellungen verändert, sodass nun auch Warnungen angezeigt werden und nicht nur wirkliche Fehler. Kontaktieren Sie bitte Ihren Provider und fragen Sie, ob er die PHP-Einstellungen so ändern kann, dass "Warnungen" nicht angezeigt werden, sondern nur "Fehler", oder wie Sie das selbst ändern können. Es geht um die PHP-Einstellung error_reporting

    Freundliche Grüße
    Stefan S. (Zeta Producer-Support)

  • Hm, nur eine Warnung ?! Die Funktionalität wird durchaus beeinträchtigt.
    Ich sehe meinen Shop ja nicht mehr... =O

    Man sollte sich bewußt sein, dass es immer jemanden gibt, der von einer Sache mehr Ahnung hat, als man selbst - idealerweise kennt man den auch und kann fragen....
    Es gibt keine dummen Fragen - nur dumme Antworten!

  • OK, habe mal etwas getestet.
    Wenn ich eine neue Seite anlege mit einem Widget "Artikelliste", dann funktioniert das.
    Offensichtlich hat sich bei meiner ursprünglichen Shop-Seite ein Fehler eingeschlichen.
    Das müsste ja dann mit einer "neuen" Seite behebbar sein.

    Man sollte sich bewußt sein, dass es immer jemanden gibt, der von einer Sache mehr Ahnung hat, als man selbst - idealerweise kennt man den auch und kann fragen....
    Es gibt keine dummen Fragen - nur dumme Antworten!

  • Hm, nur eine Warnung ?! Die Funktionalität wird durchaus beeinträchtigt.

    Ja, das war mißverständlich ausgedrückt. Hätte heißen sollen "die Funktionalität würde nicht beeinflusst werden, wenn die Anzeige von Warnungen per PHP abgeschaltet wäre".

    Versuchen Sie doch, das Widget "Artikelliste" auf der bestehenden Seite zu löschen und neu einzufügen. Hilft das (wenn es auf einer neuen Seite hilft, könnte es auch hier helfen)?

    Falls nicht, dann vielleicht doch eine neue Seite erstellen und die alte löschen.

    Freundliche Grüße
    Stefan S. (Zeta Producer-Support)

  • Ok, weitere Infos:

    Sehe ich mir die Vorschau an, geht es. Auf dem Server dann nicht. Eingestellt ist beim Provider PHP8.0

    Das müsste doch so passen, oder?

    Man sollte sich bewußt sein, dass es immer jemanden gibt, der von einer Sache mehr Ahnung hat, als man selbst - idealerweise kennt man den auch und kann fragen....
    Es gibt keine dummen Fragen - nur dumme Antworten!

  • Sollte eigentlich passen. Ist von hier aus halt fast unmöglich, zu erkennen, welche Änderung den Fehler verursacht. Sie können testhalber ja mal auf PHP 7.4 (oder 7.3) umschalten, falls das auf Ihrem Server möglich ist.

    Freundliche Grüße
    Stefan S. (Zeta Producer-Support)

  • Das teste ich noch. Obwohl eigentlich zwischendurch nix geändert wurde.

    Danke aber erst einmal für die schnellen Antworten! :thumbup:

    Man sollte sich bewußt sein, dass es immer jemanden gibt, der von einer Sache mehr Ahnung hat, als man selbst - idealerweise kennt man den auch und kann fragen....
    Es gibt keine dummen Fragen - nur dumme Antworten!

  • Guten Abend.

    Also wenn ich die PHP VErsion auf 7.3 zurück stelle, werden zwar meine Artikel wieder angezeigt, aber halt unterhalb der Fehlermeldungen / Warnungen.

    Ich habe die Meldungen mal im Firefox "untersuchen" lassen. Da werden die Meldungen beim Doppelklick etwas lesbarer formatiert:

    Ich habe mit meiner ZETA Installation auch noch einmel ne Testseite auf dem selben Server aufgesetzt - auch mit Shop. Die funktioniert einwandfrei. Ich habe auch schon den Ordner auf dem Server umbenannt und komplett neu hochgeladen. Selber Effekt.

    Daher gehe ich davon aus, dass innerhalb meines Projektes irgend etwas zerschossen ist, wo ich von ZETA aus nicht heran komme.

    Und grundsätzlich lief ursprünglich alles auch unter PHP 8.0 ...

    Man sollte sich bewußt sein, dass es immer jemanden gibt, der von einer Sache mehr Ahnung hat, als man selbst - idealerweise kennt man den auch und kann fragen....
    Es gibt keine dummen Fragen - nur dumme Antworten!

  • OK, ich habe den Fehler gefunden:

    Bei der Untersuchung der Seite nach SEO-Fehlern bekam ich die verwirrende Meldung:

    Zitat

    - Die Zeichensatzkodierung ist nicht im HTTP Header angegeben.
    + Die Angaben zur Zeichensatzkodierung (UTF-8) sind fehlerfrei.

    Daher versuchte ich, in den Einstellungen zur Zeichensatzcodierung alles mögliche zu ändern. Bei den Einstellungen - Codierung gibt es eine Checkbox "BOM schreiben".
    Diese hatte ich aktiviert und später nicht wieder deaktiviert.

    Vielleicht kann mir ja jemand sagen, was es damit auf sich hat?

    Jedenfalls war das Deaktivieren dieses Kontrollkästchens die Lösung. :)

    Man sollte sich bewußt sein, dass es immer jemanden gibt, der von einer Sache mehr Ahnung hat, als man selbst - idealerweise kennt man den auch und kann fragen....
    Es gibt keine dummen Fragen - nur dumme Antworten!

  • BOM = byte order märk

    bei Zeichensätzen, die aus 2 Bytes bestehen, signalisiert BOM, ob das Byte das Erste oder Zweite Byte des Zeichens ist. UTF-8 ist aber ein Zeichensatz mit 1 Byte. Ein BOM wird daher vom Server nicht erwartet. Wenn doch ein BOM gesendet wird, führt dies zu einer vom Server nicht verwertbaren Eingabe. Im Ergebnis können beispielsweise auch Passwörter nicht korrekt gelesen oder PHP-Operationen nicht ausgeführt werden.

  • Danke! Wieder etwas gelernt.

    Schönes Wochenende!

    Man sollte sich bewußt sein, dass es immer jemanden gibt, der von einer Sache mehr Ahnung hat, als man selbst - idealerweise kennt man den auch und kann fragen....
    Es gibt keine dummen Fragen - nur dumme Antworten!

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!