Aiuto script per nascondere banner per 24 ore all utente.

Federica Spaziatori

Utente Attivo
7 Nov 2012
30
0
0
Ciao a tutti spero che avete passato un buon anno. Mi servirebbe un inizio di script o uno completo che nasconde un altro script ( banner) per 24 ore una volta che l utente lo ha cliccato.
 
Ti mostro un esempio semplice col js
Codice:
<script>
    function ShowBanner(b){
        var div = document.getElementById(b.toString());
        if(document.cookie.indexOf("clicked=1")) div.innerHTML = "Banner";
    }
    
    function clickBanner(){
        var date = new Date();
        date.setDate(date.getDate()+1);
        var cookie = "clicked=1;expires="+date.toUTCString();
        document.cookie = cookie;
    }
    </script>
    
    
    <div id="banner" onclick="clickBanner()">
        <noscript>Banner senza js</noscript>
    </div>
    
    <script> ShowBanner('banner'); </script>
 
mi puoi spiegare lo script in modo che lo possa aattare al mio script php
PHP:
//imposto le variabili
$paytoclick = mysql_query("SELECT * FROM paytoclick");

    
 //INIZIA IL CICLO    
while ($row = mysql_fetch_assoc($paytoclick)) {
	echo '   
    <a href="Sppc/visione.php?id=', $row['id'], '">', '<img src="../Admin/script/', $row['linkbanner'],'">', '</img>', '</a>', '<div class="sosos"><div id="sxses">Guadagno:</div>', $row['pagamento'], '</div>', "\n
   ";
}

ti ringrazio per l'iuto gia dato
 
Ti basta controllare se il cookie che si riferisce a quell'id è settato

PHP:
<script>
    function clickBanner(id){
        var date = new Date();
        date.setDate(date.getDate()+1);
        var cookie = id+"=1;expires="+date.toUTCString();
        document.cookie = cookie;
    }
    </script>

<?php
$paytoclick = mysql_query("SELECT * FROM paytoclick"); 

     
 //INIZIA IL CICLO     
while ($row = mysql_fetch_assoc($paytoclick)) { 
   if(!isset($_COOKIE[$row['id']]))
    echo '    
    <a href="Sppc/visione.php?id=', $row['id'], '" onclick="clickBanner(',$row['id'],')">', '<img src="http://forum.mrwebmaster.it/Admin/script/', $row['linkbanner'],'">', '</img>', '</a>', '<div class="sosos"><div id="sxses">Guadagno:</div>', $row['pagamento'], '</div>', "\n 
   "; 
}  
?>

Comunque dato che per visualizzarlo deve passare da visione.php potresti gestirlo in php tramite sessioni o database da quella pagina
 
Ultima modifica:
Comunque dato che per visualizzarlo deve passare da visione.php potresti gestirlo in php tramite sessioni o database da quella pagina

Cioè dici di fare una colonna nel db che segna l'ora dell ultimo click?
Cmq lo script funziona ma con un click su un banner mi fa scomparire tutti i banner e non solo quello cliccato da me.
 
Non ha filo logico che te li faccia scomparire tutti, almeno che tutti non abbiano lo stesso id, ho provato simulandolo in locale e funziona se ogni banner ha un id diverso, devi trovare un identificatore univoco da passare alla funzione che creerà il cookie.

Cioè dici di fare una colonna nel db che segna l'ora dell ultimo click?
Si, mettendola a confronto con l'ora attuale puoi capire se lo ha già cliccato o meno e non è bypassabile
 

Discussioni simili