Ich verstehe es nicht =(.
Das Problem liegt deiner Meinung aber an der Form, welche den “get” Parameter zu spät übergibt ?
Wird dieser Teil:
if(isset($_POST['cookie_alert_get'])){
setcookie( "cookie_alert", "", strtotime( '+30 days' ));
$cookie_alert='';
}
also nach dem drücken des Buttons das erste mal übersprungen ?
Ich bin noch nicht so bewandert mit dem ganzen Zeug, beschäftige mich erst heute mit Cookies.
EDIT:
Ups habe den Teil nicht gesehen. Es scheint als würde es so nicht mehr funktionieren.
EDIT2: Habs hinbekommen =). Musste ein header(‘location:…’) nach dem “setcookie” machen, [Erklärung] weil nach dem Klicken auf dem Button die Form geladen wird.Erst nachdem die Seite neu geladen wird konnte der PHP Code zum setzen des Cookies ausgeführt werden. Mit dem Header(‘location’) wird nun nach dem Einreichen des Get Parameters und dem gesetzten Cookie die Seite nochmal mit der gelöschten Ausgabe neu geladen.
EDIT3: Habe mir aus dem CODE eine Funktion gebastelt, weil ich diese Ausgabe in dieser Form öfters nutzen möchte. Ich habe nur das Problem beim Austauschen mit der Variablen.
[gelöst]
EDIT4:
Ich habe den Variablen return angehängt nun Funktioniert die Ausgabe, würde ich die Funktion im HTML Code ausgeben. Aber hier habe ich das Problem dass sich in meinem Code ein “header: Location” befindet, welches sich zwischen HTML Code nicht gut macht.
Irgendwie erreiche ich die Variable im HTML aus dem Template nicht $cookie_alert (global machen habe ich bereits versucht). Außerdem scheint die Überprüfung if(isset($_COOKIE["$name_cookie"]))
nicht zu funktionieren… Der Container wird nie gelöscht obwohl das cookie gesetzt wird.
[code]
$cookie_alert=’’;
function warntext( $post_cookie, $name_cookie, $var_cookie, $text_cookie)
{
if(isset($_POST["$post_cookie"])){
setcookie("$name_cookie", ‘’, strtotime( ‘+30 days’ ));
// header(‘Location: index.php?site=’.$site.’’);
}
if(isset($_COOKIE["$name_cookie"]))
{
return $var_cookie=’’;
} else {
return $var_cookie=’
’.$text_cookie.’
’;
}
}
warntext( “cookie_alert_get”, “cookie_alert”, “$cookie_alert”, “Wir verwenden Cookies …”);[/code]
Ausgabe nach wie vor im body: