• User Newbie

    sondaggio con php e mysql...HELP!!!

    Allora io ho fatto un database contenente una tabella chiamata BlueArrow2004 con 4 campi : "id", "voto" , "NomeGruppo" e "Categoria" con 110 valori per ogni campo e il valore voto settatto a 0

    ho creato:

    • una pagina per a connessione al database chiamata db_connect.php
    • una pagina contenente una form per il sondaggio di questto tipo:

    "<P align=justify><form name="formosa" action="vai2.php" method="post">
    <input type="hidden">
    MIGLIOR BAND EMERGENTE DEL 2004

    <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
    <TR><TD width="80%">Cose Perse</TD><TD width="20%"><input name="1s" type="radio" value="1" checked></TD></TR>
    <TR><TD width="80%">Me for Rent</TD><TD width="20%"><input name="1s" type="radio" value="2"></TD></TR>"

    • una pagina php per elaborare la form ed aggiornare il database:

    <?php

    include("db_connect.php");

    $max = 11;

    if (!isset($bluearrowcookie))
    {

    for ($i=1; $i<=$max; $i++)
    	{
    	$query = "SELECT * FROM BlueArrow2004 WHERE id = '".$i."s' ";
    	$result = mysql_query($query) or die("Errore nella query: " . mysql_error());
            $valori=mysql_fetch_array($result);
    	$id=$valori['id'];
    	$voto=$valori['voto'];
    	$votos=$voto+1;
    	$aggiorna = "UPDATE BlueArrow2004 SET voto =".$votos." WHERE id = ".$id;
    	$result = mysql_query($aggiorna) or die("Errore nella query: " . mysql_error());
    	} 
    
    setcookie ("bluearrowcookies", "www.thebluearrow.tk");
    
    echo "Grazie per aver votato! redirect in corso..";
    <script>location='http://www.thebluearrow.tk';</script>
    
    
    } 
    	else	
    	{
    		echo "Hai gia' votato!";
    		
    	} 
    

    ?>

    ma non mi aggiorna il database....perche'???????


  • Community Manager

    io non uso for ma while.........ma il problema mi sa che non è li

    invece di settare il campo a 0 settalo a 1

    poi per sapere cosa non va

    stampa $voto per vedere cosa legge da voto

    Fammi sapere


  • User Newbie

    senti c'ho rinunciato ed allora ho pensato di cambiare starda del tipo....

    invece di undici voti inviati tutti in un unica form fare una serie consecutiva [con redirect] di 11 form {brutto ma almeno cosi' va!!}

    ho utilizzato il tuo codice ma ho provato ad inserire i cookie per ogni singola votazione ma ho qualche problema....non me li considera....

    eccoti il codice che utilizzo ora [il tuo!]..mi potresti dire come inserire correttamente i cokkies????

    <?php

    include("db_connect.php");

    if (!isset($bluearrowcookie1))
    {
    $risultati_mysql=mysql_query("SELECT * FROM emergente ");
    while ($riga1=mysql_fetch_array($risultati_mysql))
    {
    $id=$riga1["$bandemergente"];
    $idnuovo=($id + 1);
    }

    $sql="UPDATE emergente SET $bandemergente='$idnuovo' ";
    if(!mysql_query($sql))
    {
    	echo "Errore impossibile votare";
    	echo "<script>
    	function redirect(){
    	window.location.replace(\"sonda.htm\");}
    	setTimeout(\"redirect()\", 2000);
    	</script>";
    	exit();
    }
    else
    {
    	setcookie ("bluearrowcookie1", "thebluearrow1");
    	echo "Voto valido";
    	echo "<script>
    	function redirect(){
    	window.location.replace(\"sonda2.htm\");}
    	setTimeout(\"redirect()\", 2000);
    	</script>";
    }
    

    mysql_close();
    }
    else
    {
    echo "Hai gia' votato!";

    }

    ?>

    mi potresti dire come inserire correttamente i cokkies????


  • User Attivo

    prova a leggere questo articolo
    http://it.php.net/setcookie


  • Community Manager

    se fai il redirect con 11 form dopo il 1 il cookie è già settato e non funziona.............


  • User Newbie

    @giorgiotave said:

    se fai il redirect con 11 form dopo il 1 il cookie è già settato e non funziona.............

    ma l'idea e' quella di settare 11 cookie e testare il singolo cookie per ogni votazione

    fattibile?.....come mai cosi' non funziona???


  • User Attivo

    sei pazzo a fare un cookie per ogni voto ..
    io ho fatto di recente un sistema d sondaggi (in asp .net) e ogni volta modifico lo stesso cookie (o lo creo se non esiste) aggiungendo il numero del sondaggio votato..
    praticamente sei hai votato ai sondaggi id= 1 e id=2 io metto nel cookie sotto la kiave Votato

    1&2
    e poi faccio split (in asp .net, in php mi sembra si explode) secondo la stringa &..
    cosi ho un array ke contiene tutti i sondaggi a cui l'utente ha votato..


  • User Newbie

    in effetti.....

    ma perche' ora non me li setta i cookie????

    comunque faccio una cosa....ne setto solo uno alla fine...non e' una grande cosa ma meglio di nulla....


  • Community Manager

    l'idea di sms mi sembra la migliore............ma perchè non fai un sondaggio multiplo


  • User Newbie

    @giorgiotave said:

    l'idea di sms mi sembra la migliore............ma perchè non fai un sondaggio multiplo

    perche' non mi funziona....ho provato a farlo.... :arrabbiato:

    [vedi il mio primo post...]

    mi potreste dire perche' non mi setta i cookie?


  • User Attivo

    la variabile $bluearrowcookie dov'è dikiarata?


  • User Newbie

    @sms said:

    la variabile $bluearrowcookie dov'è dikiarata?

    al termine del ramo if setto il cookie per non permettere una successiva votazione....

    non va bene??

    come posso fare altrimenti??


  • User Attivo

    @ablo said:

    @sms said:
    la variabile $bluearrowcookie dov'è dikiarata?

    al termine del ramo if setto il cookie per non permettere una successiva votazione....

    non va bene??

    come posso fare altrimenti??
    sì appunto, ma $bluearrowcookie ha un valore o no?
    cioè non è ke x caso restituisce sempre true o sempre false?


  • User Newbie

    @sms said:

    @ablo said:
    @sms said:
    la variabile $bluearrowcookie dov'è dikiarata?

    al termine del ramo if setto il cookie per non permettere una successiva votazione....

    non va bene??

    come posso fare altrimenti??
    sì appunto, ma $bluearrowcookie ha un valore o no?
    cioè non è ke x caso restituisce sempre true o sempre false?

    non ha un valore....

    che valore devo specificare?

    e va bene dove ho settato il cookie oppure no?


  • User Attivo

    allora, sempre ribadendo ke non so il php, mi sembra strano ke quella variabile non abbia un valore ..
    la funzione isset, a quanto ho capito, lavora x verificare se una variabile esiste ..
    ora io lavorerei diversamente
    cioè avendo la variabile $bluearrowcookie tu gli piazzi un True oppure un False a seconda ke il sondaggio sia gia stato votato.. e lavori con
    if (!$bluearrowcookie = True) // cioè se si è gia votato
    // non so, fai un redirect alla pagina dei risultati
    //altrimenti fai vedere il form x votare!

    ciao!


  • Community Manager

    Perfetto.................in questi giorni sto lavorando come un matto ma sms fa un granlavoro 😉

    thanks sms 😉


  • User Attivo

    @giorgiotave said:

    Perfetto.................in questi giorni sto lavorando come un matto ma sms fa un granlavoro 😉

    thanks sms 😉 😄 😄 grazie :yuppi: 😉