Altersabfrage
Max M.
- html
Hallo,
Ich will auf meiner HP die noch in Planung ist eine Altersabfrage einbinden leider komm ich nicht dahinter wie ich das mache sodass die Abfrage immer kommt auch wenn man eine Unterseite eingibt evtl. gibts ja eine Möglichkeit nur über die Index.html auf die Hompage zu gelanden oder direkte eingabe der Unterseite zu verbieten.
Die Abfrage sollte auch eine Session Timout beinhalten.
Die Abfrage dient für eine Pornografische Website daher sollte es nicht zu leicht umgenglich sein.
Ein gutes Beispiel habe ich auch den genau das suche ich;
http://will.kommen.at/ (Ich weis das man keinen Inhalt zu Pornografischen Dingen posten darf aber hier gehts ja rein um die Abfrage hoffe das ist OK)
Wenn man auf die "Allgemeine Geschäftsbedingungen" klickt kann man auch noch die Info/AGB/..... sehen aber den eigentlichen Inhalt nicht.
Also im Grunde suche ich genau das was die Homepage hat hoffe man versteht was ich meine ;-)
Danke schon im voraus
Max M.
Hello,
Ich will auf meiner HP die noch in Planung ist eine Altersabfrage einbinden leider komm ich nicht dahinter wie ich das mache sodass die Abfrage immer kommt auch wenn man eine Unterseite eingibt evtl. gibts ja eine Möglichkeit nur über die Index.html auf die Hompage zu gelanden oder direkte eingabe der Unterseite zu verbieten.
Die Abfrage sollte auch eine Session Timout beinhalten.
Die Abfrage dient für eine Pornografische Website daher sollte es nicht zu leicht umgenglich sein.Ein gutes Beispiel habe ich auch den genau das suche ich;
http://will.kommen.at/ (Ich weis das man keinen Inhalt zu Pornografischen Dingen posten darf aber hier gehts ja rein um die Abfrage hoffe das ist OK)
Wenn man auf die "Allgemeine Geschäftsbedingungen" klickt kann man auch noch die Info/AGB/..... sehen aber den eigentlichen Inhalt nicht.
1. Sich darüber klar werden, was eine Session überhaupt ist und wie sie in PHP umgesetzt werden kann
a.) session.gc_maxlifetime ist _keine_ zuverlässige Sessiongültigkeitsdauer, sondern
lediglich die "Hülle" für die Session
b.) eigenen Anmelde- und Sessionmechanismus realisieren
"Anmeldung" kann hier auch die Alterskontrole sein
2. Festlegen, wie lange die Berechtigung gelten soll.
a.) bis zum Ablauf der gesamten Session
b.) von der Erstberechtigung X Sekunden
c.) Berechtigung für die Session eintragen
Wenn keine Berechtigung für die Seite vorhanden ist, also in der Sessionvariable kein Element für die Anmeldung vorhanden ist (isset()), oder der eingetragene Wert zu alt ist, umleiten auf die Altersprüfungsseite. Die Umleitung enthält als Parameter die URL oder Seitennummer derjenigen Seite, von der umgeleitet wurde, damit man nach erfolgreicher Berechtigungsprüfung dorthin wieder zurückgeleitet wird.
Die Berechtigung nachtriggern (falls dies gewünscht ist). Obige Prüfung ergänzen: Wenn in der Sessionvariable ein Element für die Anmeldung vorhanden ist (isset()) und die Anmelddauer noch nicht überschritten war, den Zeitwert aktualisieren.
Die Prüfung durchführen, wie auch immer das funktionionieren soll. Z.B.: "Können Sie denken? Dürfen Sie sich schon fortpflanzen? Dann extrahieren Sie aus dem zweiten Satz des folgenden Absatzes alle Substantive".
Nach erfolgreicher Prüfung in der Sessionvariable ein Element für die Berechtigung anlegen und dort den aktuellen Zeitstempel hinterlegen. Falls ein Parameter für "woher kam der Besucher" vorhanden ist in den $_GET-Elementen, dortin zurückleiten bzw. den Seiteninhalt einblenden.
Im Misserfolgsfall erstmal auf einen solide Grammatik- und Sprachkursus umleiten.
Ich hoffe, ich konnte Dir damit helfen.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Erstmal danke für die recht schnellen Antworten.
@Encoder
Hab die Frage auf der suche nach der Abfrage 100x gelesen ;-)
Mir ist klar das Minderjährige auf ich bin 18 klicken werden aber hier geht es mehr darum als Seitenbetreiber aus dem Schneider zu sein weil man die Geschäftsbedingungen etc. akzeptiert.
Der Server von der von mir geposteten HP steht zwar in der Schweiz aber anscheinend reicht die kleine Abfrage aus, hoffe auch für Österreich...
Aber bevor die HP online geht lass ich sie mir natürlich von einem Rechtsanwalt absegnen.
@Tom
Soweit ich das jetzt verstanden habe muss ich die Abfrage also auf jeder Unterseite einbauen oder?
Die Session Zeit soll sich pro Aktualisierung oder Unterseiten wechsel erneuern z.b. um 10 Minuten aber gleichzeitig sollen z.b. 10 Minuten max sein also nicht addieren.
Da man auf Unterseiten mit z.b. Videos schonmal länger als 10 Minuten bleibt kann man ja Theoretisch auch die Session Zeit für die Seite auf z.b. 60 Minuten stellen aber wenn man wieder auf eine normale Unterseite kommt wieder auf 10 Minuten also so [Überprüfung der Berechtigung/Reset/Set] dann bräuchte man ja auch nicht die Max Zeit nicht oder verstehe ich da was falsch?
Was ganz nett von dir währe wenn du dazu einen PHP Code hättest oder ähnliches ;-) will zwar selber auch noch denken aber hab leider noch sehr wenig Erfahrung in diesem Bereich.
Danke schon im voraus
Max. M
hier geht es mehr darum als Seitenbetreiber aus dem Schneider zu sein weil man die Geschäftsbedingungen etc. akzeptiert.
Bist du aus dem Schneider oder glaubst du es nur zu sein?
Wer Minderjährigen Alkohol verkauft nur weil sie sagen sie wären natürlich schon 18, kriegt deswegen trotzdem Ärger.
Und ich glaube auch das akzeptieren von irgendwelchen Bedingungen ist nicht so einfach zu lösen. Wenn ich Enter klicke, akzeptiere ich noch lange nichts. Auch wenn das irgendwo steht, was ich vielleicht gar nicht gelesen habe weils nicht unbedingt in Bezug zum Enter steht (siehe dein Beispiel) oder was evtl. zufällige gerade gar nicht vollständig oder richtig angezeigt werden konnte.
Außerdem könnte man statt klicken des Links einfach die URL aus dem Quelltext kopieren oder halt je nach vorliegender Situation. Damit landet man da wo man hin will und hat den Link nicht geklickt...
Ganz so einfach würde ich das mit dem akzeptieren nicht sehen.
Außerdem könnte man statt klicken des Links einfach die URL aus dem Quelltext kopieren oder halt je nach vorliegender Situation. Damit landet man da wo man hin will und hat den Link nicht geklickt...
Ganz so einfach würde ich das mit dem akzeptieren nicht sehen.
Das ist nicht möglich da die Session abgefragt wird soweit ich das verstanden habe.
Hi,
Außerdem könnte man statt klicken des Links einfach die URL aus dem Quelltext kopieren oder halt je nach vorliegender Situation. Damit landet man da wo man hin will und hat den Link nicht geklickt...
Ganz so einfach würde ich das mit dem akzeptieren nicht sehen.Das ist nicht möglich da die Session abgefragt wird soweit ich das verstanden habe.
???
Was hat das manuelle Eingeben/Kopieren eines Links mit Sessionabfrage zu tun?
Hi,
Außerdem könnte man statt klicken des Links einfach die URL aus dem Quelltext kopieren oder halt je nach vorliegender Situation. Damit landet man da wo man hin will und hat den Link nicht geklickt...
Ganz so einfach würde ich das mit dem akzeptieren nicht sehen.Das ist nicht möglich da die Session abgefragt wird soweit ich das verstanden habe.
???
Was hat das manuelle Eingeben/Kopieren eines Links mit Sessionabfrage zu tun?
Wenn man die Abfrage die nicht gerade lang ist auf jeder Seite einbaut hat es sehr wohl was damit zu tun auser man baut die Session ID in den Url ein und bekommt den von jemanden geschickt.
Hoffe das stimmt so zumindest hab ichs so verstanden weil hab mich durch paar Tuts zu php Session gelesen.
Hello,
Außerdem könnte man statt klicken des Links einfach die URL aus dem Quelltext kopieren oder halt je nach vorliegender Situation. Damit landet man da wo man hin will und hat den Link nicht geklickt...
Ganz so einfach würde ich das mit dem akzeptieren nicht sehen.Das ist nicht möglich da die Session abgefragt wird soweit ich das verstanden habe.
???
Was hat das manuelle Eingeben/Kopieren eines Links mit Sessionabfrage zu tun?Wenn man die Abfrage die nicht gerade lang ist auf jeder Seite einbaut hat es sehr wohl was damit zu tun auser man baut die Session ID in den Url ein und bekommt den von jemanden geschickt.
Die notwenige Abfrage beschränkt sich doch auf den Aufruf einer Funktion oder Methode.
"Geschickt bekommen" kann man immer etwas von irgendjemand. Selbst bei einer "sicheren Verbindung" könnte man mit einem geklauten Schlüssel zumindest eine sichere Verbindung aufbauen. Dann müsste man allerdings noch die Zugangsdaten kennen.
Bei einer "normalen Verbindung" kann jeder Hansel, der in der Leitung sitzt, die (Zugangs-)Daten mitlesen.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Hello,
Außerdem könnte man statt klicken des Links einfach die URL aus dem Quelltext kopieren oder halt je nach vorliegender Situation. Damit landet man da wo man hin will und hat den Link nicht geklickt...
Ganz so einfach würde ich das mit dem akzeptieren nicht sehen.Das ist nicht möglich da die Session abgefragt wird soweit ich das verstanden habe.
???
Was hat das manuelle Eingeben/Kopieren eines Links mit Sessionabfrage zu tun?Wenn man die Abfrage die nicht gerade lang ist auf jeder Seite einbaut hat es sehr wohl was damit zu tun auser man baut die Session ID in den Url ein und bekommt den von jemanden geschickt.
Die notwenige Abfrage beschränkt sich doch auf den Aufruf einer Funktion oder Methode.
"Geschickt bekommen" kann man immer etwas von irgendjemand. Selbst bei einer "sicheren Verbindung" könnte man mit einem geklauten Schlüssel zumindest eine sichere Verbindung aufbauen. Dann müsste man allerdings noch die Zugangsdaten kennen.
Bei einer "normalen Verbindung" kann jeder Hansel, der in der Leitung sitzt, die (Zugangs-)Daten mitlesen.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
So sry ich muss die Diskussion jetzt vergessen sonst versteh ich nur mehr Bahnhof ;-)
So hab es jetzt endlich geschafft habs so gemacht:
Mit dem Enter Button in der Index.html kommt man auf die Session.php in der steht:
<?php
session_start ();
$_SESSION["AGB"] = "OK";
header ("Location: /Bei/spiel.php");
?>
Im Ordner "Bei" habe ich die Datei Checksession.php angelegt in der steht:
<?php
session_start ();
if (!isset ($_SESSION["AGB"]))
{
header ("Location: ../Index.html");
}
?>
Und natürlich noch die spiel.php in der steht:
<?php
include ("Checksession.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Unbenanntes Dokument</title>
</head>
<body>
Gehts oder gehts net?
</body>
</html>
Bei jeder neuen Seite im Ordner "Bei" brauch ich oben nur
<?php
include ("Checksession.php");
?>
rein schreiben.
Also funktionieren tut es aber hab es sicher zu kompliziert gemacht oder passt das so?!
Sollte ich noch was ändern wenn ja was?
Wie sicher ist die Lösung das andere die Session nutzen ohne auf den Enter Button auf der ersten Seite gedrückt zu haben. Die einzig leichte Möglichkeit die Session nutzen ohne den Button gedrückt zu haben ist doch einfach die Session.php aufrufen oder? Wie kann ich das noch sicherer machen?
Hello,
So hab es jetzt endlich geschafft habs so gemacht:
Mit dem Enter Button in der Index.html kommt man auf die Session.php in der steht:
<?php
session_start ();
$_SESSION["AGB"] = "OK";
header ("Location: /Bei/spiel.php");
?>
>
> Im Ordner "Bei" habe ich die Datei Checksession.php angelegt in der steht:
>
> ~~~php
<?php
> session_start ();
> if (!isset ($_SESSION["AGB"]))
> {
> header ("Location: ../Index.html");
exit();
> }
> ?>
Das Exit solltest Du bei der Ablehnung noch einbauen, sonst bekommt der Browser trotzdem die ganze Seite als Antwort gesendet. Wenn der Browser nun Umleitungen deaktiviert hat, dann wird die Seite auch angezeigt.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
<?php
session_start ();
if (!isset ($_SESSION["AGB"]))
{
header ("Location: ../Index.html");
exit();
}
?>
>
> Das Exit solltest Du bei der Ablehnung noch einbauen, sonst bekommt der Browser trotzdem die ganze Seite als Antwort gesendet. Wenn der Browser nun Umleitungen deaktiviert hat, dann wird die Seite auch angezeigt.
>
Danke hab ich gemacht ;-)
Mir ist beim einschlafen was eingefallen was ist wenn ich schon in der Index.php die Session starte und mit dem Radio-Button und dem Enter Button eine Variable erstelle bzw. 2 Variablen dann wird man zur Session.php weitergeleitet dort die 2 überprüft und noch eine Variable rein geschrieben. Und in der Checksession.php dann alle 3 überprüft. Somit sollte ich eig verhindern das wer die erste Seite auslässt und der Radio-Button der von vorn herein "checked" ist es auch wircklich ist und dann der User den Enter-Button gedrückt hat.
Hab zwar etwas gefunden das mit dem Enter-Button etwas rein geschrieben werden soll also "Value" aber ich muss ich die Variable ja am Anfang generieren oder versteh ich da grad was falsch weil somit wird ja die Variable immer erstellt wenn ich auf die Index.php gehe und wenn ich die dann abfrage steht immer was drin?!
Hoffe ich hab einigermaßen klar geschildert was ich will ;-)
lg
Hello,
<?php
session_start ();
if (!isset ($_SESSION["AGB"]))
{
header ("Location: ../Index.html");
exit();
}
?>
> >
> > Das Exit solltest Du bei der Ablehnung noch einbauen, sonst bekommt der Browser trotzdem die ganze Seite als Antwort gesendet. Wenn der Browser nun Umleitungen deaktiviert hat, dann wird die Seite auch angezeigt.
Und was ich noch vergessen hatte: Location Header sollen vollständige URLs enthalten, also mit Sheme, Domain und Pfad zur Ressource.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
![](http://selfhtml.bitworks.de/Virencheck.gif)
--
☻\_
/▌
/ \ Nur selber lernen macht schlau
<http://bergpost.annerschbarrich.de>
Und was ich noch vergessen hatte: Location Header sollen vollständige URLs enthalten, also mit Sheme, Domain und Pfad zur Ressource.
kk danke
Hier nochmal meine Frage/n weil wenn sie zwischen drin stehen wird sie keiner beantworten ;-)
Mir ist beim einschlafen was eingefallen was ist wenn ich schon in der Index.php die Session starte und mit dem Radio-Button und dem Enter Button eine Variable erstelle bzw. 2 Variablen dann wird man zur Session.php weitergeleitet dort die 2 überprüft und noch eine Variable rein geschrieben. Und in der Checksession.php dann alle 3 überprüft. Somit sollte ich eig verhindern das wer die erste Seite auslässt und der Radio-Button der von vorn herein "checked" ist es auch wircklich ist und dann der User den Enter-Button gedrückt hat.
Hab zwar etwas gefunden das mit dem Enter-Button etwas rein geschrieben werden soll also "Value" aber ich muss ich die Variable ja am Anfang generieren oder versteh ich da grad was falsch weil somit wird ja die Variable immer erstellt wenn ich auf die Index.php gehe und wenn ich die dann abfrage steht immer was drin?!
Hoffe ich hab einigermaßen klar geschildert was ich will ;-)
lg
Und was ich noch vergessen hatte: Location Header sollen vollständige URLs enthalten, also mit Sheme, Domain und Pfad zur Ressource.
kk danke
Hier nochmal meine Frage/n weil wenn sie zwischen drin stehen wird sie keiner beantworten ;-)
Mir ist beim einschlafen was eingefallen was ist wenn ich schon in der Index.php die Session starte und mit dem Radio-Button und dem Enter Button eine Variable erstelle bzw. 2 Variablen dann wird man zur Session.php weitergeleitet dort die 2 überprüft und noch eine Variable rein geschrieben. Und in der Checksession.php dann alle 3 überprüft. Somit sollte ich eig verhindern das wer die erste Seite auslässt und der Radio-Button der von vorn herein "checked" ist es auch wircklich ist und dann der User den Enter-Button gedrückt hat.
Hab zwar etwas gefunden das mit dem Enter-Button etwas rein geschrieben werden soll also "Value" aber ich muss ich die Variable ja am Anfang generieren oder versteh ich da grad was falsch weil somit wird ja die Variable immer erstellt wenn ich auf die Index.php gehe und wenn ich die dann abfrage steht immer was drin?!
Hoffe ich hab einigermaßen klar geschildert was ich will ;-)
Frage hat sich teilweise schon erledigt habs jetzt bisschen anders gelöst meld mich am Abend nochmal und poste den Code...
lg
Sooo wie versprochen der fertige Code:
Index.html:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Beispiel</title>
</head>
<body>
<form action="Session.php" method="post">
<input type="radio" name="Altersabfrage" value="Ja"> Ja<br>
<input type="radio" name="Altersabfrage" value="Nein"> Nein<br>
<input type="submit" value="Enter">
</form>
</body>
</html>
Session.php:
<?php
session_start ();
$_SESSION["AGB"] = $_POST["Altersabfrage"];
echo $AGB;
if ($_SESSION["AGB"]=="Ja") header ("Location: /Beispiel/Startseite.php");
if ($_SESSION["AGB"]=="Nein") header ("Location: http://www.sven-kommt.de/_sub_sven1/_versionen.php");
?>
Startseite.php:
<?php
include ("Checksession.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test</title>
</head>
<body>
Gehts oder gehts net?^^
</body>
</html>
Checksession.php:
<?php
session_start ();
if ($_SESSION["AGB"]!=="Ja")
{
header ("Location: ../Index.html");
exit ();
}
?>
@Tom deinen Tipp mit der Location hab ich nicht vergessen ich machs in der fertigen Version dann weil teste alles am localhost
So bitte um ein Feedback;
Kann man diese Abfrage irgendwie übergehen bzw. ohne große Probleme und Wissen.
Irgendeine Sicherheitslücke oder ähnliches?
Ist etwas verbesserungswürdig?
Und was euch noch so einfällt/auffällt^^
lg Max M.
Hello,
@Tom deinen Tipp mit der Location hab ich nicht vergessen ich machs in der fertigen Version dann weil teste alles am localhost
Da richtest Du dir am besten mal eine Virtual Host ein und dann kannst Du schon alles so bauen, als läge es auf dem öffentlichen Webserver.
Welches OS benutzt Du?
Benutzt Du Xampp?
Die Vorgehensweise ist aber immer ähnlich, auch wenn Du andere Software einsetzt.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Da richtest Du dir am besten mal eine Virtual Host ein und dann kannst Du schon alles so bauen, als läge es auf dem öffentlichen Webserver.
Welches OS benutzt Du?
Benutzt Du Xampp?Die Vorgehensweise ist aber immer ähnlich, auch wenn Du andere Software einsetzt.
Win7
jop
OK könnte z.b. http://localhost/Beispiel/Startseite.php reinschreiben ;-)
Und was sagst du zum Session Code?^^
lg
Hello,
Da richtest Du dir am besten mal eine Virtual Host ein und dann kannst Du schon alles so bauen, als läge es auf dem öffentlichen Webserver.
Welches OS benutzt Du?
Benutzt Du Xampp?Die Vorgehensweise ist aber immer ähnlich, auch wenn Du andere Software einsetzt.
Win7
jopOK könnte z.b. http://localhost/Beispiel/Startseite.php reinschreiben ;-)
Ich meinte, dass Du dir einen virtual Host einrichten solltest für jedes Projekt. Das geht auch mit Xampp ganz hervorragend. Siehe Goolge und im Beispiel unter
C:\Programme\xampp\apache\conf\extra\httpd-vhosts.conf
oder wo Du den Xampp sonst installiert hast...
Und dann in die lokale Hosts-Datei einfach einen Eintrag setzen.
127.0.1.1 testdomain.lan
Dann ist die "testdomain.lan" auch unter dieser URL erreichbar.
Oder Du benutzt als TLD 'test'. Das ist sogar nach RFC 2606 für genau diesen Zweck vorgesehen und wird als reale TLD nicht vergeben.
Später musst du dann nur 'lan' gegen die tatsächliche TLD austauschen :-))
Und was sagst du zum Session Code?^^
Da sind noch zwei, drei Holperer drin.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Hello,
Da richtest Du dir am besten mal eine Virtual Host ein und dann kannst Du schon alles so bauen, als läge es auf dem öffentlichen Webserver.
Welches OS benutzt Du?
Benutzt Du Xampp?Die Vorgehensweise ist aber immer ähnlich, auch wenn Du andere Software einsetzt.
Win7
jopOK könnte z.b. http://localhost/Beispiel/Startseite.php reinschreiben ;-)
Ich meinte, dass Du dir einen virtual Host einrichten solltest für jedes Projekt. Das geht auch mit Xampp ganz hervorragend. Siehe Goolge und im Beispiel unter
C:\Programme\xampp\apache\conf\extra\httpd-vhosts.conf
oder wo Du den Xampp sonst installiert hast...
Und dann in die lokale Hosts-Datei einfach einen Eintrag setzen.
127.0.1.1 testdomain.lan
Dann ist die "testdomain.lan" auch unter dieser URL erreichbar.
Oder Du benutzt als TLD 'test'. Das ist sogar nach RFC 2606 für genau diesen Zweck vorgesehen und wird als reale TLD nicht vergeben.Später musst du dann nur 'lan' gegen die tatsächliche TLD austauschen :-))
Und was sagst du zum Session Code?^^
Da sind noch zwei, drei Holperer drin.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
OK danke für den werd ich mir noch genauer ankucken.
Und welche Fehler bzw. wo?^^
*update*
Sooo wie versprochen der fertige Code:
Index.html:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Beispiel</title>
</head>
<body>
<form action="Session.php" method="post">
<input type="radio" name="Altersabfrage" value="Ja"> Ja<br>
<input type="radio" name="Altersabfrage" value="Nein"> Nein<br>
<input type="submit" value="Enter">
</form>
</body>
</html>
Session.php (kleine Änderung deswegen der neue Beitrag)
<?php
session_start ();
if (!empty($_POST["Altersabfrage"]))
{
$_SESSION["AGB"] = $_POST["Altersabfrage"];
echo $AGB;
if ($_SESSION["AGB"]=="Ja") header ("Location: /Beispiel/Startseite.php");
if ($_SESSION["AGB"]=="Nein") header ("Location: http://www.sven-kommt.de/_sub_sven1/_versionen.php");
}
else
{
header ("Location: /Index.html");
}
?>
Startseite.php:
<?php
include ("Checksession.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test</title>
</head>
<body>
Gehts oder gehts net?^^
</body>
</html>
Checksession.php:
<?php
session_start ();
if ($_SESSION["AGB"]!=="Ja")
{
header ("Location: ../Index.html");
exit ();
}
?>
@Tom deinen Tipp mit der Location hab ich nicht vergessen ich machs in der fertigen Version dann weil teste alles am localhost
So bitte um ein Feedback;
Kann man diese Abfrage irgendwie übergehen bzw. ohne große Probleme und Wissen.
Irgendeine Sicherheitslücke oder ähnliches?
Ist etwas verbesserungswürdig?
Und was euch noch so einfällt/auffällt^^
lg Max M.
Erstmal danke für die recht schnellen Antworten.
@Encoder
Hab die Frage auf der suche nach der Abfrage 100x gelesen ;-)
Mir ist klar das Minderjährige auf ich bin 18 klicken werden aber hier geht es mehr darum als Seitenbetreiber aus dem Schneider zu sein weil man die Geschäftsbedingungen etc. akzeptiert.
Der Server von der von mir geposteten HP steht zwar in der Schweiz aber anscheinend reicht die kleine Abfrage aus, hoffe auch für Österreich...
Aber bevor die HP online geht lass ich sie mir natürlich von einem Rechtsanwalt absegnen.@Tom
Soweit ich das jetzt verstanden habe muss ich die Abfrage also auf jeder Unterseite einbauen oder?
Die Session Zeit soll sich pro Aktualisierung oder Unterseiten wechsel erneuern z.b. um 10 Minuten aber gleichzeitig sollen z.b. 10 Minuten max sein also nicht addieren.Da man auf Unterseiten mit z.b. Videos schonmal länger als 10 Minuten bleibt kann man ja Theoretisch auch die Session Zeit für die Seite auf z.b. 60 Minuten stellen aber wenn man wieder auf eine normale Unterseite kommt wieder auf 10 Minuten also so [Überprüfung der Berechtigung/Reset/Set] dann bräuchte man ja auch nicht die Max Zeit nicht oder verstehe ich da was falsch?
Was ganz nett von dir währe wenn du dazu einen PHP Code hättest oder ähnliches ;-) will zwar selber auch noch denken aber hab leider noch sehr wenig Erfahrung in diesem Bereich.
Danke schon im voraus
Max. M
Hab grad bisschen rum probiert leider geht das mit Session anscheinend offline nicht und da der Webspace auf Limacity (nutze ich zum üben und testen) wieder mal voll ist kann ich nicht sagen ob das versuchte geht...
Ich glaube für Seiten wo viele User zugreifen sollte die Konstante SID am besten sein oder?
Ist es viel arbeit eine Session Funktion nachträglich hinzuzufügen oder sollte man es am besten zum Schluss machen oder wie was? Weil dann könnte ich schon mal mit dem Layout etc. anfangen.
lg
Hi,
Hab grad bisschen rum probiert leider geht das mit Session anscheinend offline nicht
„Offline“ geht mit PHP gar nichts.
Mit einem lokalen Webserver kannst du aber bequem entwickeln und testen, so lange du noch nichts veröffentlichungswertes fertig hast.
XAMPP bietet sich für Einsteiger, die sich nicht selber mit der Installation der Einzelkomponenten rumschlagen möchten, an.
Ich glaube für Seiten wo viele User zugreifen sollte die Konstante SID am besten sein oder?
Die glaubst offenbar, eine Frage danach, was „am besten“ sei, könnte sinnvoll sein, ohne dass du überhaupt definierst, *wofür* eigentlich.
Ist es viel arbeit eine Session Funktion nachträglich hinzuzufügen oder sollte man es am besten zum Schluss machen oder wie was?
Nein, das sollte man schon von Anfang an in der serverseitigen Programmierung einplanen, was man damit genau machen möchte.
Weil dann könnte ich schon mal mit dem Layout etc. anfangen.
Layout hat mit der serverseitigen Programmierung am allerwenigsten zu tun.
MfG ChrisB
„Offline“ geht mit PHP gar nichts.
Mit einem lokalen Webserver kannst du aber bequem entwickeln und testen, so lange du noch nichts veröffentlichungswertes fertig hast.
XAMPP bietet sich für Einsteiger, die sich nicht selber mit der
Installation der Einzelkomponenten rumschlagen möchten, an.
Ich habe Dreamwaver mit dem ginge es wahrscheinlich auch nur hatte ich heute keine Zeit mich ausgiebig damit zu beschäftigen...
Aber danke werd mir das mal wenn mehr Zeit zur Verfügung habe ankucken.
Die glaubst offenbar, eine Frage danach, was „am besten“ sei, könnte sinnvoll sein, ohne dass du überhaupt definierst, *wofür* eigentlich.
Wofür steht oben in der ersten Frage von mir für eine Altersabfrage...
Nein, das sollte man schon von Anfang an in der serverseitigen Programmierung einplanen, was man damit genau machen möchte.
Ich weis was ich damit machen will und hab mir das schon gedacht das ich das am Anfang machen sollte ;-(
Layout hat mit der serverseitigen Programmierung am allerwenigsten zu tun.
Meinte damit eig damit das ich anfange die eigentliche HP zu Programmieren (hab mich nur unverständlich bzw. blöd ausgedrückt)
lg
Hi,
Ich habe Dreamwaver mit dem ginge es wahrscheinlich auch
Dreamweaver ist ein Editor, keine Serverumgebung zum Testen von PHP-Scripten, soweit ich weiß.
Wofür steht oben in der ersten Frage von mir für eine Altersabfrage...
Die Konstante SID hat nur eine Bedeutung für die Übergabe der Session-ID.
MfG ChrisB
Die Konstante SID hat nur eine Bedeutung für die Übergabe der Session-ID.
»»
Wie würdest du das realisieren?
Ich mir grad nochmal die von mir gelinkte HP angekuckt und zwar kann man die Unterseite linken und dann kommt die Altersabfrage nicht aber der Timeout schon also anscheinend wird eine Zufallszahl für jeden User generiert die für eine Session steht die am Server gespeichert wird den wenn ich von einen anderen Pc bzw. bei mir grad Handy rauf gehe geht das ohne Abfrage also ist es nich IP abhängig...
Der Link enthält den komischen Wert:
bei.spiel.at/cgi-bin/COSADA/Front.woa/2002/wo/fKD1Yl4BvLCthnXrGR9PEw/2.0.0.0.0.0.13.5.11.0.1.1.0.1.0.1.1.1.13
Sry für die formatierung und evtl. Rechtschreibfehler schreib grad am Handy was nicht gerade lustig ist :-P
lg
Hi,
Wie würdest du das realisieren?
Mit Sessions.
MfG ChrisB
Hi,
Mir ist klar das Minderjährige auf ich bin 18 klicken werden aber hier geht es mehr darum als Seitenbetreiber aus dem Schneider zu sein weil man die Geschäftsbedingungen etc. akzeptiert.
Bist Du wirklich aus dem Schneider?
Kann ein Minderjähriger, der (je nach Alter) nicht oder nur beschränkt geschäftsfähig ist, überhaupt wirksam irgendwelche Geschäftsbedingungen akzeptieren?
cu,
Andreas
Hello,
Mir ist klar das Minderjährige auf ich bin 18 klicken werden aber hier geht es mehr darum als Seitenbetreiber aus dem Schneider zu sein weil man die Geschäftsbedingungen etc. akzeptiert.
Bist Du wirklich aus dem Schneider?
Kann ein Minderjähriger, der (je nach Alter) nicht oder nur beschränkt geschäftsfähig ist, überhaupt wirksam irgendwelche Geschäftsbedingungen akzeptieren?
Interessante Frage. Vermutlich nicht. Er muss nach dem deutschen Recht auf jeden Fall vor schädlichen (jugendgefährdenden) Einwirkungen geschützt werden.
In Frankreich wäre das wahrscheinlich anders. Da sind auch solche Sachen möglich:
http://de.wikipedia.org/wiki/Ligne_de_Cerdagne
An der Strecke stehen dann Schilder, man möge nicht die dritte Schiene berühren. Die führt nämlich 850 Volt Gleichspannung...
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Tom hat dir ja schon technische Grundlagen geschrieben.
Was noch fehlt wäre die Überlegung, was diese Abfrage überhaupt bringen soll.
Das einzige was passieren wird ist, dass die Seite für Minderjährige erst wirklich interessant wird. Es gibt leider keine angeborene Unfähigkeit auf "bin über 18" zu klicken, die jeder Minderjährige hat und die pünktlich mit dem 18. Geburtstag verschwindet...