Checkbox und Button nacheinander schalten

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
lck
Posts: 1364
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: Checkbox und Button nacheinander schalten

Post by lck » Wed Nov 07, 2018 2:54 pm

cmb wrote:
Tue Nov 06, 2018 4:51 pm
Und funktioniert es so wie gewünscht?
mhz wrote:
Tue Nov 06, 2018 10:56 pm
Neueste Änderungen vorgenommen, mit nur der einen konkreten Seite, aber diese wird nicht angesprungen.
Ich hab das auch mal getestet (erstmal ohne Register_XH).

Die Weiterleitung funktioniert nur, wenn die Seite "Veröffentlicht" und in der "Navigation angezeigt" wird, aber das ist ja nicht gewollt und Sinn der Sache. Ist die Seite versteckt, so funktioniert die Weiterleitung nicht.

Versteckt man sie per Register_XH, ist die Seite für den nicht angemeldeten User nicht sichtbar, erst nach der Anmeldung und die Weiterleitung funktioniert hier auch nur wenn die Seite veröffentlicht und nicht versteckt ist. Das wiederum macht aber keinen Sinn, weil man sie dann ohne "checkbox agree" anspringen kann :?
Mit Memberpages habe ich nicht getestet, eventuell funktioniert's da wie gewünscht.

userfuncs.php

Code: Select all

<?php

/**===================================
 * Checkbox und danach anklickbarer Button
 *====================================*/
function checkbox()
{
    if (isset($_POST['checkbox_submit'], $_POST['checkbox_agree'])) {
        $_SESSION['checkbox_agreed'] = true;
    }
    if (!isset($_SESSION['checkbox_agreed'])) {
        return '<form id="checkbox" name="checkbox" action="" method="POST">'
        . 'Ich habe diese Informationen zur Kenntnis genommen'
        . '<input type="checkbox" id="checkbox_agree" name="checkbox_agree">'
        . '<label for="checkbox_agree">und werde mich daran halten.</label>'
        . '<button type="submit" class="submit" name="checkbox_submit">'
        . 'Ich bin Lehrer/in und arbeite in Klassen mit Inklusion.<br>'
        . '<strong> Ich halte mich daran, dass ich diese Materialien <br>'
        . 'nur für unterrichtliche Zwecke der HHS nutze.</strong>'
        . '</button>'
        . '</form>';
    }
}

function checkbox_agreed()
{
	if (isset($_POST['checkbox_submit'], $_POST['checkbox_agree'])) {
	$_SESSION['checkbox_agreed'] = true;
	header('Location: ' . CMSIMPLE_URL . '?Zielseite1'); // diese und die nächste Zeile ergänzen
	exit;                                                    // NAME_DER_SEITE durch den Seitennamen ersetzen
    }
}
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

cmb
Posts: 12893
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: Checkbox und Button nacheinander schalten

Post by cmb » Wed Nov 07, 2018 3:22 pm

lck wrote:
Wed Nov 07, 2018 2:54 pm
Versteckt man sie per Register_XH, ist die Seite für den nicht angemeldeten User nicht sichtbar, erst nach der Anmeldung und die Weiterleitung funktioniert hier auch nur wenn die Seite veröffentlicht und nicht versteckt ist. Das wiederum macht aber keinen Sinn, weil man sie dann ohne "checkbox agree" anspringen kann :?
Guter Punkt! Was hier als Lösung denkbar wäre, wäre die versteckte Seite mittels newsbox() anzuzeigen, falls der User bereits zugestimmt hat. Ich habe den entsprechenden Code-Ansatz mal als Gist bereitgestellt (dann kann man besser nacharbeiten, und auch auf bestimmte Zeilen(blöcke) verlinken). In dieser Zeile muss der Name des versteckten Seite geändert werden (falls sie nicht „VERSTECKTE_SEITE“ heißt). Das funktioniert dann so, dass an der Stelle, an der {{{checkbox}}} steht, entweder Checkbox und Button erscheinen, oder nach Zustimmung eben der Inhalt der versteckten Seite.

Inwiefern die Weiterleitung wirklich funktioniert, ist hier aber zunächst eigentlich zweitrangig, denn zumindest müsste der Browser auf eine quasi nicht vorhandene Seite weiter leiten, und dann ein 404 Not found gemeldet werden. Das scheint aber bei Michael nicht zu funktionieren.

Etwas anderes ist mir noch aufgefallen: eigentlich war das userfuncs.php Skript so gedacht, dass ein Mitglied per Memberpages oder Register_XH angemeldet sein muss, weil nur dann eine Session gestartet wurde. Bei Michael wird anscheinend immer eine Session gestartet (liegt das an Memberpages?)
Christoph M. Becker –Plugins for CMSimple_XH, but not for CMSimple 4+

mhz
Posts: 546
Joined: Tue Jun 25, 2013 8:46 pm
Location: Heusenstamm, Hessen
Contact:

Re: Checkbox und Button nacheinander schalten

Post by mhz » Wed Nov 07, 2018 5:43 pm

Hallo zusammen,
eine ähnliche Weiterleitung funktioniert unter Memberpages bereits.
Allerdings hat sie hier den Ansatz des NUR Buttons.
Es gibt auch eine Checkbox, aber die ist nur SO da und "tut" nur so, als hätte sie eine Bedeutung.

Was ich mit meiner Anfrage hier wollte: Diese Checkbox-Funktion wirklich zu einer echten Funktion werden zu lassen.
Also eigentlich genau das, was jetzt passiert: Kein Anklicken der Checkbox = Keine Weiterleitung über den Button.
Anklicken der Checkbox = Weiterleitung des Buttons wird freigegeben.

Eine andere Überlegung: Wäre das evtl. leichter zu programmieren, wenn der Button ausgegraut ist und mit dem Setzen des Häkchens in der Checkbox dann erst anklickbar wird?

Grüße
Michael
Michael Zajusch (mhz)-- Mein Tutorial für CMSimple_XH. Früher

cmb
Posts: 12893
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: Checkbox und Button nacheinander schalten

Post by cmb » Fri Nov 09, 2018 2:28 pm

mhz wrote:
Wed Nov 07, 2018 5:43 pm
eine ähnliche Weiterleitung funktioniert unter Memberpages bereits.
Allerdings hat sie hier den Ansatz des NUR Buttons.
Es gibt auch eine Checkbox, aber die ist nur SO da und "tut" nur so, als hätte sie eine Bedeutung.
Hm, ich bin nicht sicher was du meinst. Seit Memberpages 3.6 gibt es eine Autologin-Checkbox, die man aber nur sieht, wenn man bereits eingeloggt ist. Wenn ich mich richtig erinnere, war das in früheren eine Remeber-Me-Checkbox, die man vor dem Login zu sehen bekam. In beiden Fällen ist deren Funktion aber ein automatisches Login zu ermöglichen – wenn man also die Website nach einer Weile wieder besucht, und die Checkbox beim letzten Besuch angeklickt hatte, dann wird man automatisch eingeloggt.

Das scheint auch wie gedacht zu funktionieren, sollte aber nicht verwendet werden.

Oder meinst du hier vielleicht gar nicht Memberpages, sondern Privacy_XH?

Auf jeden Fall ist bei der ganzen Sache folgendes zu berücksichtigen:
lck wrote:
Wed Nov 07, 2018 2:54 pm
Versteckt man sie per Register_XH, ist die Seite für den nicht angemeldeten User nicht sichtbar, erst nach der Anmeldung und die Weiterleitung funktioniert hier auch nur wenn die Seite veröffentlicht und nicht versteckt ist. Das wiederum macht aber keinen Sinn, weil man sie dann ohne "checkbox agree" anspringen kann :?
Mit Memberpages habe ich nicht getestet, eventuell funktioniert's da wie gewünscht.
Ich denke, bei Memberpages ist es genau das gleiche. Wirklich schützen kann man den Zugriff auf die Seite mit den Downloads nur, wenn sie einen erhöhten Zugangslevel erfordert. Die vielleicht einfachste Lösung wäre, sich von den jeweiligen Mitgliedern explizit per Mail (evtl. Mailformular) bestätigen zu lassen, dass sie die Information gelesen und verstanden haben, und mit den Bedingungen einverstanden sind (dann hat man auch was Schriftliches). Dann erhöhst du in der Mitglieder-Verwaltung deren Zugriffslevel, und fertig. :)
Christoph M. Becker –Plugins for CMSimple_XH, but not for CMSimple 4+

mhz
Posts: 546
Joined: Tue Jun 25, 2013 8:46 pm
Location: Heusenstamm, Hessen
Contact:

Re: Checkbox und Button nacheinander schalten

Post by mhz » Fri Nov 09, 2018 4:53 pm

Die Variante mit der E-Mail und dem etwas Schriftliches zu haben ist sehr interessant!
Ich werde mich nach dem Wochenende mal damit auseinandersetzen.

Danke schon mal für Deine guten Gedanken, Christoph!
Gruß Michael
Michael Zajusch (mhz)-- Mein Tutorial für CMSimple_XH. Früher

Post Reply