Barra per cookie law (jquery+php)

Discussione in 'Snippet Javascript' iniziata da filomeni, 30 Luglio 2015.

  1. filomeni

    filomeni Moderatore Membro dello Staff MOD

    Registrato:
    14 Maggio 2006
    Messaggi:
    1.039
    Mi Piace Ricevuti:
    6
    Punteggio:
    38
    Sesso:
    Maschio
    Occupazione:
    Web Developer
    Località:
    Roseto degli Abruzzi (TE)
    Home Page:
    Ciao, stavo leggendo l'articolo dei Cookie Low che tempo fa mi è arrivato dalla news letter di mr webmaster... Se volete ecco il link: http://www.mrwebmaster.it/leggi-fisc...ana_12024.html.
    Non voglio commentare questa nuova str che hanno fatto... Comunque per essere tranquilli facciamolo tanto non costa nulla.
    Nell'articolo ci sono anche dei link dove forniscono questa barra... Ci ho fatto un giro! Madre! chi chiede l'iscrizione chi ti porta altrove... insomma alla fine ho detto: "me la faccio io" e la metto a disposizione di chi vuole!
    Chiusa parentesi, il codice lo metto in questa sezione perchè fa uso di più linguaggi: PHP, Jquery, css e l'immancabile HTML!!!
    Spiego in brevissimo e chi ha domande non se le tenga :D
    Ho usato javascript per crearmi un cookie

    Codice:
    onclick="document.cookie='block=set;expires'"
    
    (che rientra proprio nell'argomento... :gun: ), alla pressione del button con PHP lo recupero e se esiste valorizzo la variabile "$style" che va a nascondere il "contenitore" della barra e fino a che non chiudiamo il browser rimane memorizzata e non fa più vedere il fastidioso avviso.
    Con il breve css ho dato uno stile alla barra e al bottone per chiuderla (ovviamente molto grezzo, possiamo fare di meglio) e in fine con Jquery creo l'animazione della barra che non come le solite che spariscono a slide, io ho preferito la dissolvenza (.fadeOut).
    Tutto qua, provate se vi piace è vostra :D

    Posto il codice per intero:

    HTML:
    <html>
    <head>
    <?php
    $cookie = $_COOKIE["block"]; //recupero il cookie
    if($cookie=="set"){
    	$style="display:none";
    }
    ?>
    <style>
    .cookieLaw{position:fixed;top:90%;left:0px;width:100%;height:100px;background-color:#000;z-index:10}
    	.text > p{font-family:arial;font-size:14px;color:#fff;padding:10px}
    	.text{position:absolute;width:80%;height:100%}
    	button{position:absolute;right:10%;top:5px;width:120px;height:50px;background-color:#FFA143;-webkit-border-radius: 8px;-moz-border-radius: 8px;border-radius: 8px;z-index:20}
    </style>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js"></script>
    <script type="text/javascript">
    $(document).ready(function() {
    			$("#slide").click(
    	 		function(){
    	 		$(".cookieLaw").fadeOut(3000);			
    			});
    	});//FINE DOM
    	</script>
    </head>
    <body>
    <div class="cookieLaw" style="<?php echo $style ?>"><!--recupero la variabile per nascondere il div-->
    <div class="text"><p>Il mio sito, per offrirti i servizi, utilizza cookie. Se vuoi saperne di piu',leggi qui. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque elemento acconsenti all'uso dei cookie. Per utilizzare i servizi è necessario che acconsenti all'utilizzo.</p></div><button id="slide" type="button" onclick="document.cookie='block=set;expires'" >Accetto!</button>
    </div>
    </body>
    </html>
    
    Ciao Alla prox
     
    Ultima modifica di un moderatore: 27 Settembre 2015
  2. MarcoGrazia

    MarcoGrazia Utente Attivo

    Registrato:
    15 Dicembre 2009
    Messaggi:
    664
    Mi Piace Ricevuti:
    7
    Punteggio:
    18
    Sesso:
    Maschio
    Occupazione:
    Sviluppare web design (Studiare)
    Località:
    Udine
    Home Page:
    Attenzione a quello che si dice quando di mezzo c'è la legge, quindi informarsi sempre e bene.

    Ora, scrivere:
    Ha il sapore di una minaccia e inoltre non è sempre vero che non posso usufruire dei servizi: sicuramente posso leggere il sito, solo che io utente non ti permetto di profilarmi, e francamente non mi sembra una sciocchezza, semmai un valore aggiunto.
    Il problema semmai, a parte il costo della profilazione che sarà pure uno dei più bassi in europa, ma 150€ rimangono pure sempre 150€! Il problema dicevo, è che la scritta dentro il banner non è mai fine a se stessa ma bisogna aggiungere sempre una pagina con i riferimenti della privacy in cui si deve necessariamente inserire oltre il riferimento alla legge, il modo for dummies per coloro che visitano il sito e vogliono impedire la profilazione o cancellare i cookie dal proprio browser, in funzione del browser che utilizzano.
    Per esempio come ho fatto io qui ed è solo un esempio fra tanti, basta cercare in rete.
    Un riferimento a chi detiene i dati personali degli utenti, in questo caso di solito il titolare del sito.
    Attenzione perché come dice lo stesso Garante, solo se mettete pubblicità sul sito dovete mettere il banner, mentre se non l'avete allora basta la pagina relativa alla privacy che dovete sempre mettere, e sulla quale potete scrivere nel secondo caso che non profilate alcunché.
    Se poi avete un forum di discussione dove gli utenti devono anche iscriversi, be allora davvero detenete un database di dati in cui la privacy è fondamentale, e a rigor di legge, dovete denunciarne l'uso e la detenzione alla locale questura, ma questo non da oggi ma dagli anni '30! ( Sì lo so non c'erano i database in formato elettronico, ma i registri cartacei sì ).
    Insomma fare un sito non è solo un divertimento ma anche un onere legale e mi pare anche giusto quando dovete mantenere segreto un intero database di dati personali come nome, cognome, password, email e quant altro.

    Un ultima cosa e poi stacco se no mi ammazzate :D è dibattuta la questione ma secondo alcuni non dovreste proprio profilare nulla e mostrare nessuna pubblicità fino a quando non accetto ( scroll della pagina o click sulla X )
    Quindi a prescindere da ciò modificherei lo script in questo modo per nascondere l'odiato banner anche quando scrollate la pagina:
    HTML:
    <script type="text/javascript">
    $( document ).ready( function() {
      function chiudiSlide() { $( '.cookieLaw' ).fadeOut( 3000 ); };
    
      $( '#slide' ).scroll( function() { chiudiSlide(); });
      $( '#slide' ).click( function(){  chiudiSlide();  });
    });//FINE DOM
    </script>
    
    Così se si clicca sulla X o si srolla la pagina comunque si chiude il banner.
    Non è nemmeno tutto, appena lo trovo inserisco anche la norma di legge relativa alla durata del cookie che regola il banner di avviso.
     
  3. borgo italia

    borgo italia Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    4 Febbraio 2008
    Messaggi:
    16.025
    Mi Piace Ricevuti:
    146
    Punteggio:
    63
    Sesso:
    Maschio
    Località:
    PR
    Home Page:
    ciao
    i chiarimenti sono sempre interessanti ed utili, anche se ritengo tale disposizione una cavolata (e sono gentile), e questo perchè sanno anche se hai le mutande sporche o pulite indipendentemente dai cookie e, ribadisco, rompono i suddetti ai piccoli perche i grandi sono intoccabili.
    anch'io mi fermo qui :)
    dimenticavo: "quando c'era lui, caro lei" dicevano "tutto quello che non è proibito è obbligatorio", ci stamo ricascando
     
  4. filomeni

    filomeni Moderatore Membro dello Staff MOD

    Registrato:
    14 Maggio 2006
    Messaggi:
    1.039
    Mi Piace Ricevuti:
    6
    Punteggio:
    38
    Sesso:
    Maschio
    Occupazione:
    Web Developer
    Località:
    Roseto degli Abruzzi (TE)
    Home Page:
    Bravo, era una cosa che volevo aggiungere... ma non ho tempo maledizzz... :)
     
  5. filomeni

    filomeni Moderatore Membro dello Staff MOD

    Registrato:
    14 Maggio 2006
    Messaggi:
    1.039
    Mi Piace Ricevuti:
    6
    Punteggio:
    38
    Sesso:
    Maschio
    Occupazione:
    Web Developer
    Località:
    Roseto degli Abruzzi (TE)
    Home Page:
    Era un mio impegno rivedere un attimo questo snippet... Come già detto e ribadisco, la funzione di nascondere il banner allo scroll della pagina è stato giustamente implementato da @MarcoGrazia ma così come stilato il codice non può funzionare in quanto l'evento "scroll" deve essere applicato all'oggetto "window" e non all'ID "#slide" e comunque anche per questo evento va "scritto" il cookie per non visualizzare nuovamente il banner al reload della pagina.
    Il cookie in questione:
    Codice:
    document.cookie='block=set;expires';
    Quindi riprendo il codice e correggo la parte in questione.
    Codice:
    <script type="text/javascript">
    $( document ).ready( function() {
      function chiudiSlide() { $( '.cookieLaw' ).fadeOut( 3000 ); };
    
      $( window ).scroll( function() {  chiudiSlide(); //correzione
      document.cookie='block=set;expires'; // aggiungo il cookie all'evento scroll
      });
      $( '#slide' ).click( function(){  chiudiSlide();  });
    });//FINE DOM
    </script>
    E come al solito vi saluto e auguro una buona navigazione nel forum.
     
    Ultima modifica: 21 Giugno 2016
Sto caricando...

Condividi questa Pagina