Ich habe sowohl per PHP versucht etwas in die Session zu schreiben, als auch per setVar. Beides funktioniert nicht.
Ein einfaches
$_SESSION["bigtext"]=1;
bleibt in der Session nicht erhalten.
Ich habe dann versucht
<we:setVar to="session" nameto="bigtext" value="1" />
Das führt zu einem Fehler, die Ausgabe der Seite wird einfach abgebrochen.
Folgende Fehlermeldung:
Argument 1 passed to we_weTag_tag::setVarArray() must be of the type array, null given, called in /…/webEdition/we/classes/weTag/we_weTag_tag.class.php on line 169
Der Tag <we:sessionStart /> steht oben in der Vorlage und Seite ist dynamisch gespeichert.
Im ersten Fall scheint es in eine andere Session geschrieben zu werden. Auf derselben Seite kann ich die Sessionvariable noch ausgeben, aber auf der nächten nicht mehr.
Im zweiten Fall gibt es einen Fehler, keine Anhnung, ob das miteinander zutun hat.
Product Version 9.0.8
PHP 7.4.19
MariaDB 10.05.11
Nachtrag:
Ich habe nun den Tag <we:sessionStart /> ausgetauscht gegen <?php session_start(); ?> und die Probleme sind verschwunden. Ist das anders problematisch, sollte man das lieber nicht so machen?
Was genau macht denn der Tag <we:sessionStart />? Was könnte da schief laufen?
Es können keine Werte in die Session geschrieben werden
Es können keine Werte in die Session geschrieben werden
Dinge von großer Bedeutung gehe man mit Leichtigkeit an, Dinge von geringer Bedeutung mit großem Ernst.
Re: Es können keine Werte in die Session geschrieben werden
1. we:setVar to session: dies ist ein Bug. Das werden wir fixen.
2. Folgender Code speichert korrekt bei mir:
2. Folgender Code speichert korrekt bei mir:
Code: Alles auswählen
<we:sessionStart/>
<!DOCTYPE HTML>
<html dir="ltr" lang='<we:pageLanguage type="language" />'>
<head>
<we:title></we:title>
<we:description></we:description>
<we:keywords></we:keywords>
<we:charset defined="UTF-8">UTF-8</we:charset>
</head>
<body>
<?php
p_r($_SESSION);
$_SESSION['test'] = 'test';
?>
</body>
</html>
Re: Es können keine Werte in die Session geschrieben werden
Ah, gut zu wissen mit dem Bug, danke.
Dein Code speichert eben bei meine Installation bei all-inkl.de in der beschriebenen Konfiguration nicht.
Es sei den ich benutze <?php session_start(); ?>
Bei einem anderen Hoster hab eich dasselbe probiert mit <we:sessionStart /> und da funktioniert es.
Deshalb meine Farge, was erzeugt denn genau der Tag <we:sessionStart />?
Dein Code speichert eben bei meine Installation bei all-inkl.de in der beschriebenen Konfiguration nicht.
Es sei den ich benutze <?php session_start(); ?>
Bei einem anderen Hoster hab eich dasselbe probiert mit <we:sessionStart /> und da funktioniert es.
Deshalb meine Farge, was erzeugt denn genau der Tag <we:sessionStart />?
Dinge von großer Bedeutung gehe man mit Leichtigkeit an, Dinge von geringer Bedeutung mit großem Ernst.
Re: Es können keine Werte in die Session geschrieben werden
Oh,eine Menge. Hier findest Du den Code dazu, hilft Dir das weiter zur Einschätzung?
https://sourceforge.net/p/webedition/so ... .class.php
Re: Es können keine Werte in die Session geschrieben werden
Insbesondere ruft we:sessionStart eben bei Bedarf auch die PHP Funktion session_start() auf. Daran kann es also eigentlich nicht liegen…
Re: Es können keine Werte in die Session geschrieben werden
ja, wenn ich mir die Klasse so ansehe und mal das weglasse, was mit Kundenverwaltung und Benutzer-Login zutun hat, bleibt das hier übrig:
Code: Alles auswählen
if(!isset($_SESSION)){
we_base_WE::$session = new we_base_sessionHandler();
}
Dinge von großer Bedeutung gehe man mit Leichtigkeit an, Dinge von geringer Bedeutung mit großem Ernst.
Re: Es können keine Werte in die Session geschrieben werden
ja, das kommt hin.
Ich würde bei dir ggfs. auch mal kontrollieren ob was im Errorlog auftaucht (u.a. sowas wie headers already sent)
Ich würde bei dir ggfs. auch mal kontrollieren ob was im Errorlog auftaucht (u.a. sowas wie headers already sent)
webEdition-Kern-Entwickler
Re: Es können keine Werte in die Session geschrieben werden
Also ich bekomme ein
Das sie mit <?php session_start(); ?> aber korrekt gestartet wird, vermute ich mal, dass der WE-Tag hier noch mehr macht, was dann schif läuft, viellicht wird noch angegeben, wo es hingeschrieben wird und da gibt es ein Rechteproblem oder irgendeine anderre Anforderung, die nicht erfüllt ist.
Daher ja meine Frage, was der Tag denn ausgibt, wenn einfach nur die Session gestartet wird, ohne Benutzer-Login oder Kundendaten.
Also was genau macht
wenn ich <we:sessionStart /> benutze. Das sieht für mich so aus als würde die Session einfach nicht gestarttet werden.Undefined variable $_SESSION
Das sie mit <?php session_start(); ?> aber korrekt gestartet wird, vermute ich mal, dass der WE-Tag hier noch mehr macht, was dann schif läuft, viellicht wird noch angegeben, wo es hingeschrieben wird und da gibt es ein Rechteproblem oder irgendeine anderre Anforderung, die nicht erfüllt ist.
Daher ja meine Frage, was der Tag denn ausgibt, wenn einfach nur die Session gestartet wird, ohne Benutzer-Login oder Kundendaten.
Also was genau macht
Code: Alles auswählen
we_base_WE::$session = new we_base_sessionHandler();
Dinge von großer Bedeutung gehe man mit Leichtigkeit an, Dinge von geringer Bedeutung mit großem Ernst.
Re: Es können keine Werte in die Session geschrieben werden
Das siehst Du hier: https://sourceforge.net/p/webedition/so ... .class.phpLuigii hat geschrieben: ↑Do 15. Jul 2021, 12:46 Daher ja meine Frage, was der Tag denn ausgibt, wenn einfach nur die Session gestartet wird, ohne Benutzer-Login oder Kundendaten.
Also was genau machtCode: Alles auswählen
we_base_WE::$session = new we_base_sessionHandler();
Re: Es können keine Werte in die Session geschrieben werden
Hi,
hab gerade auch einen allinkl Server in der Hand und das gleiche Problem entdeckt => vermute allerdings dass das nichts mit dem Server und auch nichts mit dem we-Tag sessionStart zu tun hat, sondern (du setzt eine WE Version 9 ein?), webEdition die Sessions in der Dtaenbank verwalten möchte, das aber nicht so wirklich klappt.
In den Einstellungen => Allgemein gibts eigentilch dazu eine Option, ob die Sessions in der Datenbank verwaltet werden sollen oder nicht. Die Option kann aber nicht verändert werden, weil das Select dazu in der Oberfläche bei mir nicht angezeigt wird. Sollte diese Einstellung in der tblPrefs gespeichert werden (nehme ich mal an), dann steht da bei mir auch nichts. Wenn nun nichts drin steht, nehme ich weiter an, dass webEdition einfach sagt, ich mach das mal in der Datenbank, denn in der tblSessions steht fleißig was drin. Was da alles dazwischen passiert, hab ich mir nicht angesehen...
Quickfix ist also session_start() per php und nachaltiger ein Taslk in qa.webedition.org zu diesem Thema
VG, Timo
hab gerade auch einen allinkl Server in der Hand und das gleiche Problem entdeckt => vermute allerdings dass das nichts mit dem Server und auch nichts mit dem we-Tag sessionStart zu tun hat, sondern (du setzt eine WE Version 9 ein?), webEdition die Sessions in der Dtaenbank verwalten möchte, das aber nicht so wirklich klappt.
In den Einstellungen => Allgemein gibts eigentilch dazu eine Option, ob die Sessions in der Datenbank verwaltet werden sollen oder nicht. Die Option kann aber nicht verändert werden, weil das Select dazu in der Oberfläche bei mir nicht angezeigt wird. Sollte diese Einstellung in der tblPrefs gespeichert werden (nehme ich mal an), dann steht da bei mir auch nichts. Wenn nun nichts drin steht, nehme ich weiter an, dass webEdition einfach sagt, ich mach das mal in der Datenbank, denn in der tblSessions steht fleißig was drin. Was da alles dazwischen passiert, hab ich mir nicht angesehen...
Quickfix ist also session_start() per php und nachaltiger ein Taslk in qa.webedition.org zu diesem Thema
VG, Timo
webEdition Partner - https://www.blickfang-media.com
Ehemals im Vorstand des webEdition e.V.
Ehemals im Vorstand des webEdition e.V.
Re: Es können keine Werte in die Session geschrieben werden
Sessions werden ab WE 9 NUR noch in der DB angelegt. Und das es funktioniert, sieht man ja auch im Backend - würde es nicht gehen, gäbe es kein Backend und man könnte mit WE nicht arbeiten.
webEdition-Kern-Entwickler
Wer ist online?
Mitglieder in diesem Forum: Ahrefs [Bot], Bing [Bot] und 62 Gäste