WBCE CMS Forum

WBCE CMS – Way Better Content Editing.

Du bist nicht angemeldet.

Ankündigung

WBCE CMS 1.6.9 verfügbar / available - wichtiges Sicherheitsudate / important security update

#1 28.09.2021 09:00:03

berny
Mitglied

Section über cookie ein- oder ausblenden

Hallo
lch glaube, das schon mal gelesen zu haben, finde es aber momentan nicht:

Sections:
Code 2
Miniform
Code2

Im ersten Code:
If(!$_COOKIE['CHECK']) {

dann miniform

dann code:
} else {
echo ="blabla";
}


Das funkt leider nicht, da der erste code nich vollständig ist (fehlende }) und einen Fehler ausgibt.

Wie könnte ich das sonst lösen?

Beitrag geändert von berny (28.09.2021 09:00:28)

Offline

#2 28.09.2021 09:04:14

florian
Administrator

Re: Section über cookie ein- oder ausblenden

Nicht ausprobiert, eventuell in einem einzigen Code2-Abschnitt

if (Bedingung) {
echo '[[sectionpicker?sid=42]]';
} else {
...
}

wo 42 die sID des miniform-Abschnitts ist, der dann selbst über Zuordnung zu einem unsichtbaren Block nicht direkt auf der Seite erscheinen darf

Offline

#3 28.09.2021 14:28:13

berny
Mitglied

Re: Section über cookie ein- oder ausblenden

Das ginge prinzipiell, nur leider kann ich das $_COOKIE['123'] nicht verwerten, da kommt nix an, obwohl laut Console das cookie gesetzt wurde.

Ich habs auch über einen Parameter probiert, kommt nix an.

Aufruf im code bei der auszublendenden section: (debugversaut ;-) )

$check_cookie = $_COOKIE['125'];
echo "debug: ".$check_cookie;

if(!isset($_COOKIE['125'])) 
  {    
    echo "debug: ".$_COOKIE['125'];
    echo "[[SectionPicker?sid=14]]";
   
  } else {
     echo "debug: ".$_COOKIE['125'];
    echo "Sie haben bereits am Gewinnspiel teilgenommen. <br />Besuchen Sie uns später wieder.";
  }

Extra Seite, wo das cookie gesetzt wird:

setcookie('125', true, time()+3600000);
//$_COOKIE['QG'] = '1';

true hätte ich auch mit '1' gesetzt, ändert auch nix.

Verbietet da Strato irgendetwas ?

Offline

#4 29.09.2021 09:44:56

berny
Mitglied

Re: Section über cookie ein- oder ausblenden

Anderer Denkansatz:
Gibt es in wbce eine eigene Funktion, die cookies ausliest?

Sprich, über die man die Abfrage starten könnte?

Offline

#5 30.09.2021 17:59:33

berny
Mitglied

Re: Section über cookie ein- oder ausblenden

Keiner eine Idee?

Offline

#6 30.09.2021 19:11:23

bernd
Core-Team

Re: Section über cookie ein- oder ausblenden

Ich seh' das Problem nicht (oder ich verstehe falsch was du genau erreichen möchtest).

Hab' mal 2 Seiten mit jeweils einem Code2 Abschnitt angelegt:
"set-cookie"

setcookie('123', true, time()+3600000);

"read-cookie"

print_r($_COOKIE);
echo $_COOKIE['123'];

Klappt einwandfrei:
"set-cookie" aufgerufen, danach "read-cookie" - Cookie ist gesetzt und verfügbar ....


... nein in Europa verwenden wir beim Programmieren nicht € statt $ ...

Offline

#7 01.10.2021 08:20:13

berny
Mitglied

Re: Section über cookie ein- oder ausblenden

Das Problem ist, dass bei mir eben kein cookie ausgegeben wird. (obiger Code)

Was ich erreichen will:
Jemand füllt ein Miniform aus.
Kommt zur Bestätigungsseite.
Dort wird das Cookie gesetzt.
Beim nächsten Besuch soll statt dem Miniform dann die Meldung kommen "schon Besucht".

Das cookie wird laut Konsole gesetzt.
Scheint auch bei der Seite mit Miniform laut Konsole auf.
Aber es wird über den Parameter $_COOKIE nicht ausgegeben.
Weder in der if Abfrage noch mit echo.

Also irgendwo ein Schreibfehler oder Restriction bei Strato oder der Parameter gilt nicht für diesen Zweck (wär komisch)

(ist die Seite eines Freundes, sonst hab ich nichts auf Strato)

Offline

#8 01.10.2021 12:13:42

bernd
Core-Team

Re: Section über cookie ein- oder ausblenden

Ich sehe eigentlich keinen Grund warum - oder was -  Strato an $_COOKIE rummurksen sollte.

Hab's jetzt nochmal nachgebaut:
- versteckte Seite mit Miniform
- Dankeseite - dort wird das Cookie gesetzt
- Aufrufseite für's Formular mit deinem Code aus #3
Klappt einwandfrei (ausser das deine echos natürlich bei noch nicht gesetztem Cookie Warnings schmeissen - aber das ist hier nebensächlich)

Ausser!!!
wenn die Dankeseite eine Unterseite von Miniform ist, dann stimmt der Pfad-Gültigkeitsbereich des Cookies nicht mehr!
so wie du das Cookie setzt gilt es nur für das aktuelle Verzeichnis in dem es gesetzt wird.
also bei einer Seite im "Root" für /xxx/pages
wird es von einer Unterseite gesetzt gilt es nur für z.B. /xxx/pages/miniform
setze mal dein Cookie so:

setcookie('125', true, time()+3600000, '/');

dann sollte es hinhauen.

Beitrag geändert von bernd (01.10.2021 12:15:03)


... nein in Europa verwenden wir beim Programmieren nicht € statt $ ...

Offline

Liked by:

berny

#9 01.10.2021 15:46:01

berny
Mitglied

Re: Section über cookie ein- oder ausblenden

Aha, das könnte die Lösung sein!
muss ich demnächst testen.

Die Dankesseite ist eine Unterseite vom miniform, welches mit droplet in eine andere Seite eingebaut wurde.

Aufrufseite und Miniform liegen im root, Dankesseite eine Ebene darunter.

Beitrag geändert von berny (01.10.2021 15:48:11)

Offline

#10 03.10.2021 15:56:16

berny
Mitglied

Re: Section über cookie ein- oder ausblenden

OK, das wars!
Hab jetzt dem cookie ein '/' hinzugefügt, jetzt läufts....

thx!!!

Offline

Fußzeile des Forums

up