banner cookies: come non farlo riapparire?

eisenblu

Nuovo Utente
7 Mar 2014
10
0
1
Ciao a tutti, spero di essere nella sezione giusta. A proposito della famosa informativa sui cookies, ho inserito il relativo banner su tutte le pagine del sito (in .php), il problema è che in ogni pagina successiva aperta, il banner si ripresenta. C'è modo di evitarlo? Visualizzato il primo come si può evitare di ritrovarselo in fondo ad ogni pagina?
Grazie per l'aiuto.
 
Ciao eisenblu benvenuto sul forum!
Il banner che hai inserito devi fare in modo che inserisca un cookies quando l'utente accetta, quindi ci deve essere uno script che verifica se il cookies è presente, facendo in modo che se è presente non visualizza più il banner mentre se manca lo torna a presentare
 
Grazie al suggerimento, ho quasi risolto la questione con uno script trovato in rete. Quello che ancora mi manca è la possibilità di redirect alla mia pagina "cookie policy" con il relativo pulsante e in più prevedere l'accettazione anche cliccando fuori dal banner o proseguendo nella navigazione del sito.

Ecco il codice:
"
Codice:
// Modifica il messaggio di avviso di utilizzo cookie da qui
var Messaggio = "Questo sito utilizza cookies per migliorare la tua esperienza di navigazione. Se scegli di accettare esprimi il consenso all'uso dei cookie. In alternativa, potrai leggere la cookie policy premendo il pulsante Cookie Policy."

// Qui il testo del bottone
var AccettoBtn = "Accetto"

// Se vuoi che il bottone reindirizzi ad una pagina
var Redirect = "cookie policy"

function mostraAvviso() {

  var message = "<div style='text-align:center;  width:100%;  position:fixed; z-index:10000000'>";

  message = message + Messaggio + "&nbsp;&nbsp;&nbsp;&nbsp;";

  message = message + "<button type='button'  onClick='JavaScript:Accetta();' value='' style='cursor:pointer;  padding:3px 5px;'>" + AccettoBtn + "</button>";

message = message + "&nbsp;&nbsp;&nbsp;&nbsp;<button type='button' name='' onClick='window.location ='banner.html';' value='' style='cursor:pointer;  padding: 3px 5px;'>" + Redirect + "</button>";

message = message + "</div></div><div style='height:45px'></div>";

  document.writeln(message);

}
function Accetta() {
  setCookie("CookieEu", null, 365);
  location.reload(true);
  //Gestione del Redirect
  if(redirect!="true"){
  window.location.href = "banner.html" + redirect;
  }
}
function setCookie(nomecookie, valore, finegiorni) {
  var datafine = new Date();
  datafine.setDate(datafine.getDate() + finegiorni);
  var valoreCookie = escape(valore) + ((finegiorni == null) ? "" : "; expires=" + datafine.toUTCString() +"; path=/");
  document.cookie = nomecookie + "=" + valoreCookie; 
}

function getCookie(nomecookie) {
  var i, x, y, array = document.cookie.split(";");
  for (i = 0; i < array.length; i++) {
  x = array.substr(0, array.indexOf("="));
  y = array.substr(array.indexOf("=") + 1);
  x = x.replace(/^\s+|\s+$/g, "");
  if (x == nomecookie) {
  return unescape(y);
  }
  }
}

function checkCookie() {

  var nomeCookie = "CookieEu";
  var cookieverifica = getCookie(nomeCookie);
  if (cookieverifica != null && cookieverifica != "") {

  setCookie(nomeCookie, cookieverifica, 365);
  }
  else {
  mostraAvviso();
  }
}

checkCookie();
"
Attualmente il pulsante "accetto" funziona regolarmente, mentre cliccando su "cookie policy" non succede nulla, come anche navigando su altre pagine tornando sulla prima, riappare il banner.
Considerando che non ho grande esperienza di javascript, ringrazio in anticipo per l'aiuto.
 
Ultima modifica di un moderatore:
ciao
ho spostato in php, pero mi sembra. visto ora, che sia tutto js.
io ho risolto in php mettendo in un div il tutto
PHP:
<?php
if(isset($_COOKIE["privacy"])){
   $style="display:none";
}
?>
<div style="<?php echo $style; ?>;"><!-- tutto l'ambaradan--></div>
 
No. Infatti PHP non centra nulla!
Hai postato una parte di codice con solo quel pezzo il banner non può funzionare se vuoi un aiuto bisogna che posti tutto il codice a tua disposizione
 
il banner funziona in questo modo: nella pagina dove appare il banner inserisco fra i tags <head> ...</head> la dicitura
<script language="JavaScript" type="text/javascript" src="cookie.js"></script>
il codice del file cookie.js è esattamente quello che ho postato prima.
Quello che vorrei ottenere è che cliccando sul tasto "cookie policy" si possa richiamare la pagina banner.html e che cliccando su qualsiasi punto della pagina si ottenga lo stesso risultato di "Accetto".
Riguardo alla soluzione in php la sto testando ma ho difficoltà.
Intanto grazie
 
Un problema è che a me quello script non funziona e ora non ce la faccioa a controllare il perchè, comunque per dire al pulsante che pagina deve aprire per la policy, devi modificare questo codice
Codice:
// Se vuoi che il bottone reindirizzi ad una pagina
var Redirect = "cookie policy"
al posto di cookie policy divi mettere il nome della tua pagina.
Non si può cliccare in un qualsiasi punto della pagina per chiudere il bannere! Bisogna mettere un link apposito o cliccare accetto
 

Discussioni simili