Frage: Barriere die weggeht wenn man button klickt.

01/30/2012 20:37 Eragøn#1
Hallo,
ich suche jemanden der mir helfen koennte etwas zu machen.
Ich brauche sozusagen eine startseite bei der man regeln akzeptiern muss bevor die eigentliche seite angezeigt wird.

bsp:
man geht auf die website, dann kommt ein grosses fenster auf dem man akzeptieren oder verlassen klicken kann. wenn man akzeptieren drueckt wird man zur normalen seite weitergeleitet. aber wenn man schonmal an diesem tag accept geklickt hat soll es nicht nocheinmal vorkommen, erst am naechsten tag wieder.
01/30/2012 21:04 NotEnoughForYou#2
Wäre ueber ne session oder cookie gut machbar
01/30/2012 21:09 Whoknowsit#3
Kleines Beispiel:

PHP Code:
<?php

$haltbarkeit 
30// Cookie-Haltbarkeit in Tagen

if(!isset($_COOKIE['rules') && !isset($_GET['rules'])) {
?>

Blablabla Regeln blablabla

<a href="<?php $_SERVER['PHP_SELF']?>&rules=accept">Ich akzeptiere</a> | <a href="http://google.de">Ich lehne ab</a>

<?php
elseif(isset($_GET['rules']) && $_GET['rules'] == 'accept') {
    
setcookie('rules''accept'time() + 86400 $haltbarkeit);
    
header("Location: ".$_SERVER['PHP_SELF']);
    exit;  
}
else {
?>

Du hast die Regeln akzeptiert.

<?php
}
?>
01/30/2012 21:46 Eragøn#4
Nur hab ich ein problem, wenn ich acceptieren klicke wird dies in meiner browserleiste angezeigt:

Quote:
http://meineseite.de/%3C?php%20$_SERVER[%27PHP_SELF%27]?%3E&rules=accept
01/31/2012 00:33 yym3#5
<?php $_SERVER['PHP_SELF']?>&rules=accept änder das mal um mit
?rules=accept

Frage mich warum er überhuapt das php self da eingebaut hat :/

_____________
So krank wie ich nach Log files bin, würde ich wenn es nach mir geht es sogar mit einer Datenbank machen damit ich auch alles speicher wer wann die Seite besucht hat >:D


Gruß
yym3.
01/31/2012 13:48 Whoknowsit#6
Quote:
Frage mich warum er überhuapt das php self da eingebaut hat :/
Macht der Gewohnheit ;)

@Eragøn

Ich hab das Echo vergessen ;) Spielt aber keine Rolle. Einfach <?php $_SERVER['PHP_SELF']?> entfernen.
01/31/2012 15:15 yym3#7
Quote:
Originally Posted by Whoknowsit View Post
Macht der Gewohnheit ;)

@Eragøn

Ich hab das Echo vergessen ;) Spielt aber keine Rolle. Einfach <?php $_SERVER['PHP_SELF']?> entfernen.
Solltest dir das abgewöhnen, da es für Sicherheitslücken sorgt, laut mehreren Beiträgen die ich mir durchgelesen habe ;).

Gruß
yym3.
01/31/2012 18:12 PseudoPsycho#8
Jo, einfach
$_SERVER['SCRIPT_NAME'] statt $_SERVER['PHP_SELF'] verwenden...
01/31/2012 18:21 Whoknowsit#9
Quote:
Originally Posted by yym3 View Post
Solltest dir das abgewöhnen, da es für Sicherheitslücken sorgt, laut mehreren Beiträgen die ich mir durchgelesen habe ;).

Gruß
yym3.
Wenn man's falsch nutzt, ja. Ansonsten nicht ;)