[PHP7] Session wird nicht in die DB geschrieben

  • Hallo,

    ich wollte mal wieder etwas am Shop basteln und habe mir daher eine lokale XAMPP-Instanz aufgesetzt:
    PHP Version 7.1.12
    Zend Engine v3.1.0
    Xdebug v2.5.5

    Beim schreiben der Session landet nichts in der Session-Tabelle.
    Ich habe einen Breakpoint auf die _sess_write gesetzt, jedoch springt er da nicht rein - _sess_read hingegen funktioniert super - leider bekommt er kein Ergebnis, aufgrund der leeren Tabelle.

    Wenn ich define('STORE_SESSIONS', ''); (leer) setze, dann läuft alles Ordnungsgemäß.
    Unter PHP Version 7.0.23 (Remote) funktioniert das schreiben der Sessions einwandfrei.

    Ich sehe in der PHP V 7.1.12 lediglich Bugfixes - da sollte sich nichts am Sessionhandling geändert haben.

    Hat die 2.6 jemand unter xampp-win32-7.1.12-0-VC14- getestet?

    Da wir einige Anpassungen im Shop haben, habe ich die aktuelle sessions.php aus fp5_qf1_plus gezogen. Leider auch hier erfolglos.

    Beste Grüße - Alex

  • Ich habe es wie folgt behoben:

    PHP
    function _sess_read($key) {
        $value = xtc_db_fetch_array(xtc_db_query("SELECT value FROM " . TABLE_SESSIONS . " WHERE sesskey = '" . xtc_db_input($key) . "' and expiry > '" . time() . "';"));
        if ($value['value']) {
            return base64_decode($value['value']);
        }
        return '';
    }

    Wie es aussieht, darf _sess_read kein false zurückgeben, sondern einen leeren String, ansonsten wird die Session auch nicht geschrieben.

    Damit ist der Fehler reproduzierbar, wenn keine Session-Variable vorliegt / sessions-Tabelle geleert wurde und Session-Handling per DB übernommen wird.

    Ich wundere mich, ob das neu in PHP7 ist - jedenfalls habe ich dummerweise viele Stunden daran gesessen - ich hoffe die kann ich jemanden ersparen.


    Nachtrag: gerade folgendes bei XTC gefunden:

    Grüße - Alex

    4 Mal editiert, zuletzt von Alex2a (19. Dezember 2017 um 01:17)

  • Hallo mein lieber jotest,
    schau einmal hier vorbei, dort kannst du immer einen fertigen XAMP auf Windows installieren.
    Damit arbeite ich hauptsächlich und komme damit sehr gut klar.
    Bei Hilfe helfe ich dir sehr gerne weiter ;) ;)

    Habe ich es richtig verstanden, das du V2.6.x auf php 7.x betrieben möchtest ???


    XAMP-Link für jotest

  • Also die V2.6 läuft durchaus auf PHP7.

    Es müssen lediglich ein paar Dateien angepasst werden, da alles auf mysqli laufen sollte - das ist in 1-2 Stündchen gemacht - getestet werden muss natürlich ordentlich.

    Das Session-Problem von gestern ist kein prinzipielles PHP7 Thema, da es bei Profihost läuft, nur lokal bei mir nicht - Aber das ist inzwischen behoben.

  • Hey, wir könnten es an einem Shop durchspielen und vielleicht eine Step by Step-Anleitung erstellen.

    Was ich aber bisher noch nicht ganz durchgetestet habe ist das Backend. Sitze noch am Frontend - hat aber weniger mit der Umstellung auf PHP7 zu tun.

  • Yep aber mit Anleitung schreiben oder überhaupt schreiben in Deutsch aber auch NL ist mit so 'n art dislexie die ich habe ein qualung.


    Nur wie lange soll man ein 2.5x oder 2.6 noch am laufende halten?

    OK wir drehen es auch eigentlich hauptgrund WAWI, und naturlich dass die Shops noch Gewinn bringend sind, auch SEO noch in ordnung scheint bis jetzt, dan änderd mann nicht schnell wirklich alles! Weil da muss man fast...

    Bin zu lange beschäftigd mit nachdenken und versuchen zwischen löesung, werdet doch vielleicht eher zwei nebeneindander, kostet mehr und mehr zeit aber weniger Risiken wen Kunden, Betrieb hier oder Suchmachinen es nicht schluken, weis ich bin da vielleicht zu altmödisch mit mein denken! ? ;)

    Problem ist mit testen vor ein / zwei jahr neue versionen von WASWi und co kam so viel mist draus dass die lust vergeht auf so etwas, und auch ziemlich viel ärger in deren Forum gehabt.

    Da kan man nicht unendlich auf ein alte version bleiben, nur wen es wirklich reicht, und yep da kommt dan vielleicht doch den PHP 7.1 ???

    Und dazu muss dan den Support hier unter einander getragen werden wass ja auch wichtig ist weil mit nur anpassen auf ein neuere PHP ist man nicht.. also soll den IDEE von mindestens ein Supportforum HIER auch dabei sein müssen, da hilft dan doch ein MITGLIED pauschal betrag oder Supportleistung bringen vor den teilen.

    Da sind Admin und Andreas auch gefragt, naturlich wen es ein gute alternative ist den v2.6 frisches hat man 2 Versionen für / mit verschieden Zielgruppen vielleicht doch gut? ( den v2.6 frisch php 7.x kan man dan vielleicht einfacher einsetzen um Kunden zu gewinnen die anderer Shopsystemen noch beim ältere versionen haben, und so herüber ziehen, wen die nicht gleich für ein v3plus mit import und hilfe entscheiden, ob es einfacher ist hängt von den SERVER HOST, und WAWI's ab die die benutzen und vielleicht noch etwas länger benutzen möchten)

    So gesagt ein UPDATE UMZUG mit etwas gewohlte eingebaute verzögerung auf gleich den neueste.... Man muss dan aber sehr aufpassen mit connectoren, plugins und modulen.

    Sehe mall so ein beispiel: ODOO ist auch im 3 versionen noch voll im einsatz, weil wen man da endlich fast fertig ist hat man kein LUST eben schnell wider um zu steigen und vieles auf neue version, wie mehr man an anpassungen anbindungen hat werdet so ein PUNKT von alles updaten verlegt, teilweis auch wegen mehr stabil oder Kompatible sein, am ende aber ist dein zu alte version naturlich nicht mehr Kompatible.

    Security?


    Alle eine frohe Weihnachten

    2 Mal editiert, zuletzt von jotest (25. Dezember 2017 um 15:50)

  • Zitat

    Nur wie lange soll man ein 2.5x oder 2.6 noch am laufende halten?

    Wir werden bei der 2.6 bleiben, da wir diese extrem stark angepasst haben.
    Die Version zu ändern, hätte für uns keinerlei Nutzen.