Sailor
Wir hatten das ja schonmal in einem anderen Thema angekratzt, hier schildere ich mal genauer wo mein Problem liegt...
Da es ja scheinbar unpassend ist, wenn Sessions ohne Einwilligung gesetzt werden, muss dies ja mit dem Click auf den "Cookies akzeptieren"-Button passieren.
Leider habe ich von JS überhaupt keine Ahnung, und der Cookie-Hinweis, welchen ich mir mal irgendwo wegkopiert habe, funktioniert mit JS.
Beim Aufruf der Seite werden 2 Sessions gesetzt, eine für den Besucherzähler und die andere für die Ausgabesprache:
PHP
<?php
session_set_cookie_params(43200);
session_start();
if(!isset($_GET['language']))
{
if(!isset($_SESSION['language']))
{
include('lang/de.php');
$_SESSION['language'] = 'de';
}
else
{
include('lang/' . $_SESSION['language'] . '.php');
}
}
else
{
$_SESSION['language'] = $_GET['language'];
include('lang/' . $_SESSION['language'] . '.php');
}
$statement = $db->query('SELECT visitor_counter FROM bl_verwaltung WHERE id = 1');
while ($db_current_visitors = $statement->fetch()):
$current_visitors = $db_current_visitors['visitor_counter'];
endwhile;
if(!isset($_SESSION['visitor_count']))
{
$current_visitors++;
$statement = $db->prepare("UPDATE bl_verwaltung SET visitor_counter = ? WHERE id = 1");
$statement->execute(array($current_visitors));
$_SESSION['visitor_count'] = true;
}
?>
Alles anzeigen
Der Code für den Cookie-Hinweis:
Code
<div id="cookie">
<a onClick="var d = new Date(); d = new Date(d.getTime() +1000*60*60*24*730); document.cookie = 'cookie=1; expires='+ d.toGMTString() + ';'; document.getElementById('cookie').style.display = 'none';" class="button">Okay!</a>
<p class="cookiemessage">
Wir benutzen Cookies zur Steigerung der Besucherfreundlichkeit.<br />Mit der Verwendung dieser Website akzeptierst du unsere Datenschutzerklärung.
<a class="cookielink" href="index.php?loc=privacy">Mehr erfahren...</a>
</p>
</div>
<script>
a = document.cookie;
while(a != '')
{
while(a.substr(0,1) == ' ')
{
a = a.substr(1,a.length);
}
cn = a.substring(0,a.indexOf('='));
if(a.indexOf(';') != -1)
{
cw = a.substring(a.indexOf('=')+1,a.indexOf(';'));
}
else
{
cw = a.substr(a.indexOf('=')+1,a.length);
}
if(cn == 'cookie')
{
r = cw;
}
i = a.indexOf(';')+1;
if(i == 0)
{
i = a.length
}
a = a.substring(i,a.length);
}
if(r == '1') document.getElementById('cookie').style.display = 'none';
</script>
Alles anzeigen
Ich habe wirklich NULL Ahnung wie es gemacht wird, ich hoffe mir kann dabei geholfen werden