ciao
ecco lo script col cokie per impedire la votazione continua.
guarda che ho messo il tempo di vita del cockoe a solo 10 secondi dalla sua creazione per fare le prove, ti conviene portarlo a 1 giorno modificando
setcookie("votato", "si", time()+10);
in
setcookie("votato", "si", time()+(24*60*60);
oppure
setcookie("votato", "si", time()+86400);
poi stai attente alle istruzioni
<?php
ob_start();//QUESTA DEVE ESSERE ALLA RIGA 2. prima NON deve esserci nulla a parte il tag di php
?>
e
<?php
ob_end_flush();//QUEST DEVE ESSESRE ALLA PENULTIMA RIGA
?>
altrimenti set_cookie ti da errore
PHP:
<?php
ob_start();//QUESTA DEVE ESSERE ALLA RIGA 2. prima NON deve esserci nulla a parte il tag di php NEMMENO UNO SPAZIO
?>
<style type="text/css">
.a{
display:block;
float:left;
width:100px;/*dare larghezza 100px per non dover fare ulteriori calcoli*/
height:10px;
background-color:#CCCCCC;
background-image:url(barra_x100.jpg);/*fare immagine larga 100px*/
background-repeat:no-repeat;
background-position:-100px;/*corrisponde a 0 =100-100*/
margin-top:2px;
}
</style>
<?php
$host = 'localhost'; //nome host
$username = 'root'; //user name
$password = 'password'; //password
$db = 'prove'; // nome data base
//---connessione----------------------------------------------------
$conn = @mysql_connect($host,$username,$password) or die (mysql_error());
$sel = @mysql_select_db($db) or die (mysql_error());
// a mysql_error() si può sostituire un altro messaggio
$q="SELECT * FROM sondaggio WHERE id=1";
$risultato = mysql_query($q);
$riga=mysql_fetch_assoc($risultato);
$tot=0;//metto il totale a 0
//e calcolo
foreach($riga as $chiave => $valore) {
if($chiave !="id"){
${$chiave}=$valore;//valore del campo
$tot=$tot+$valore;//faccio il totale
}
}
if($tot>0) {
$internet= (int)($internet/$tot*100); $internet_pos=$internet-100;
$depliant= (int)($depliant/$tot*100); $depliant_pos=$depliant-100;
$casualmente= (int)($casualmente/$tot*100); $casualmente_pos=$casualmente-100;
$amici_o_conoscenti= (int)($amici_o_conoscenti/$tot*100); $amici_pos=$amici_o_conoscenti-100;
$giornali_o_televisione= (int)($giornali_o_televisione/$tot*100); $giornali_pos=$giornali_o_televisione-100;
}else{
$internet= 0; $internet_pos=-100;
$depliant= 0; $depliant_pos=-100;
$casualmente= 0; $casualmente_pos=-100;
$amici_o_conoscenti= 0; $amici_pos=-100;
$giornali_o_televisione= 0; $giornali_pos=-100;
}
if(isset($_POST['puls_invio'])) {
if(!isset($_COOKIE['votato'])){
if(isset($_POST['voto'])) {
$voto=mysql_real_escape_string($_POST['voto']);
$q="UPDATE sondaggio SET $voto = $voto + 1 WHERE id=1";
if(mysql_query($q)) {
echo "<img src=\"http://localhost:8888/MIEI%20SITI/Alveo/immagini/ok.png\" width=\"40\" height=\"40\" alt=\"Ok\" title=\"Ok\" /><br /><div style=\"margin-top:10px; margin-bottom:20px;font-size:16px; color:#0000ff; text-align: center;\">Grazie, il tuo voto è stato inserito!</div>";
echo "<meta http-equiv='Refresh' content='3; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
setcookie("votato", "si", time()+10); //per un giorno al posto di 10 metti +(24*60*60)
}
}else {
echo "<img src=\"http://localhost:8888/MIEI%20SITI/Alveo/immagini/alert.png\" width=\"50\" height=\"50\" alt=\"Alert\" title=\"Alert\" /><br /><div style=\"margin-top:10px; margin-bottom:20px; font-size:16px; color:#ff0000; text-align: center;\">Devi selezionare una risposta!</div>";
echo "<meta http-equiv='Refresh' content='3; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
}
}else{
echo "<img src=\"http://localhost:8888/MIEI%20SITI/Alveo/immagini/alert.png\" width=\"50\" height=\"50\" alt=\"Alert\" title=\"Alert\" /><br /><div style=\"margin-top:10px; margin-bottom:20px; font-size:16px; color:#ff0000; text-align: center;\">tra un voto e il successivo deve passare almeno un giorno</div>";
echo "<meta http-equiv='Refresh' content='3; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
}
}
?>
<p style="font-size:13px; text-align:center; margin-top:-5px; margin-bottom:30px; color:#008040;">Come hai conosciuto i prodotti Akuna?</p>
<div style="margin-top:-10px; margin-left:3px; text-align:left;">
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
<div class="fra">
<input type="radio" name="voto" value="internet"> Internet
<br />
<div class="a" style="background-position:<?php echo $internet_pos;?>px"></div><div class="percentuale"><?php echo $internet;?>%</div>
<br />
<input type="radio" name="voto" value="depliant"> Depliant
<br />
<div class="a" style="background-position:<?php echo $depliant_pos;?>px"></div><div class="percentuale"><?php echo $depliant;?>%</div>
<br />
<input type="radio" name="voto" value="casualmente"> Casualmente
<br />
<div class="a" style="background-position:<?php echo $casualmente_pos;?>px"></div><div class="percentuale"><?php echo $casualmente;?>%</div>
<br />
<input type="radio" name="voto" value="amici_o_conoscenti"> Amici o conoscenti
<br />
<div class="a" style="background-position:<?php echo $amici_pos;?>px"></div><div class="percentuale"><?php echo $amici_o_conoscenti;?>%</div>
<br />
<input type="radio" name="voto" value="giornali_o_televisione"> Giornali o televisione
<br />
<div class="a" style="background-position:<?php echo $giornali_pos;?>px"></div><div class="percentuale"><?php echo $giornali_o_televisione;?>%</div>
<div style="margin-top:30px; text-align:center;"><input type="submit" name="puls_invio" value="Vota" class="manina-guest"></div>
</div><!-- fra -->
</form>
</div><!-- div style -->
<?php
ob_end_flush();//QUEST DEVE ESSESRE ALLA PENULTIMA RIGA
?>