- Home
- Categorie
- Coding e Sistemistica
- PHP
- Cookie a mezzo servizio
-
Cookie a mezzo servizio
Salve a tutti, ho un piccolo problema che non riesco a risolvere, sicuramente per la mia poca esperienza sui cookies.
Sto facendo un semplice sistema di votazione degli articoli, in cui è possibile votare, appunto, l'articolo che si sta leggendo.
Questo è il mio breve script che però non funziona:
if (!isset($_COOKIE['voto']) || ($_COOKIE['voto'] != $_GET['id'])) {
$sql= "UPDATE voto bla bla bla...'";
@mysql_query ($sql);
setcookie("voto", $_GET['id'], time()+86400);
header ("Location: thanks.php");
}Cos'ha che non funziona?
Il sistema non dovrebbe consentirti di votare lo stesso articolo più volte .. e apparentemente lo fa ma ...In pratica succede questo:
visito articolo 1
- Lo Voto
- Tento ancora ma non posso piu grazie al cookie
visito articolo 2
- Lo Voto
- Tento ancora ma non posso piu grazie al cookie
torno articolo 1
- Posso votarlo ... anche se non dovrei
Spero di essere stato chiaro ...
Vi ringrazio anticipatamente per l'eventuale supporto
Grazie
-
Scusa nn fai prima così, setti il cookie quando votano, cioè:
if (isset($_POST['submit'])) {
if (isset($_COOKIE["sondaggio"]))
{
echo "Furbacchiò poi votà solo na vorta!";}
else {
//fai avvenire l'update e fai vedere i risultati
}
}
//submit è il tasto di invio del voto
-
@Albertorrr said:
Scusa nn fai prima così, setti il cookie quando votano, cioè:
if (isset($_POST['submit'])) {
if (isset($_COOKIE["sondaggio"]))
{
echo "Furbacchiò poi votà solo na vorta!";}
else {
//fai avvenire l'update e fai vedere i risultati
}
}
//submit è il tasto di invio del votoeh no, perchè parliamo di piu articoli ....
come l'hai scritto tu significa che posso votare 1 sola volta in generale ...
invece devo poter votare più articoli .. è un sistema di rating .. gli utenti votano se un articolo gli è piaciuto o meno
-
if (isset ($_COOKIE['voto'] != $_GET['id'])) {
prova senza mettere questo !isset($_COOKIE['voto']) mi sembra superfluo, continuo a pensarci però.
Mi sembra,se io arrivo è ho il cookie dell'articolo 1 non serve scrivere la prima parte , penso basti la seconda parte perchè tu dici che il cookie dell'id , se ce l'hai, deve essere diverso dall'id dell'articolo 1 , quindi....provaFammi sapere, sono curioso di risolvere questa faccenda
Ciao
-
@Albertorrr said:
if (isset ($_COOKIE['voto'] != $_GET['id'])) {
prova senza mettere questo !isset($_COOKIE['voto']) mi sembra superfluo, continuo a pensarci però.
Mi sembra,se io arrivo è ho il cookie dell'articolo 1 non serve scrivere la prima parte , penso basti la seconda parte perchè tu dici che il cookie dell'id , se ce l'hai, deve essere diverso dall'id dell'articolo 1 , quindi....provaFammi sapere, sono curioso di risolvere questa faccenda
Ciao
si in effetti è un salto in piu .. che però non risolve il problema
-
Deduco che hai una sola pagina per tutte gli articoli, giusto? mi sembra strano, che quando voti si crea il cookie e rivoti dopo che ci ritorni subito.....intanto pondero
-
@Albertorrr said:
Deduco che hai una sola pagina per tutte gli articoli, giusto? mi sembra strano, che quando voti si crea il cookie e rivoti dopo che ci ritorni subito.....intanto pondero
ovviamente
il problema è che il cookie viene tipo sovrascritto dalla votazione di un nuovo articolo.
-
Ma questo lo fai solo con le persone registrate?
ciao
-
Magari
con tutti i visitatori, belli e brutti
-
Perfetto grande
Allora, nn saprei , in realtà pensavo, deve sovrascrivere per forza, intanto potresti iniziare a vedere gli indirizzi ip che devono essere univoci , poi ci penso ancora
-
HO TROVATO, allora, poichè lui ti sovrascrive sul cookie,crea un cookie con il nome o l'id dell'articolo come nome del cookie stesso ,
setcookie("$idarticolo","$idarticolo");prova un pò dovrebbe andare, perchè ogni volta che voti in base all'articolo crea un cookie diverso
ciao
-
Ci avevo pensato .. ma non è insano fargli costruire 2 miliardi di Cookie differenti? Nn è un discorso pulito, sbaglio?
Thanks
-
Si ma cmq devi cambiare nome,penso, e poi i cookie hanno una scadenza,nn saprei diversamente, e poi nn penso che una persona voti moltissime cose? di che tratta, che articoli sono?dipende dall'argomento per capire anche quante volte una persona vota, dovresti farti un'idea , ma penso che ci sia solo questo modo
Ciao
-
Purtroppo votano moltissimo ... considera penso che una decina di voti a testa se li fanno tutti... come minimo.
Cmq implemento questo sistema e vedo come va
Ti ringrazio per la collaborazione
Ciao
-
VABBè 10 cookie nn sono molti
Di nienteCiao