[php] un seul vote par personne

Fermé
Ne0 Messages postés 52 Date d'inscription mardi 25 mai 2004 Statut Membre Dernière intervention 12 mars 2007 - 17 févr. 2005 à 19:53
dugenou Messages postés 6087 Date d'inscription mercredi 19 janvier 2005 Statut Contributeur Dernière intervention 30 juillet 2021 - 18 févr. 2005 à 18:35
Bonjour a tous,
Je bloque sur un probleme depuis plusieurs heures... pouveze vous m'aider ?
J'ai creer un vote sur mon site et jaimerais que les personnes ne puissent voter qu'une seule fois par vote. (il y a plusieurs votes sur la page). J'ai essayer de creer une varable $_SESSION[$id], avec $id etanbt l'id du vote. Mais cela ne marche pas, la variable est bien crée mais effacer au rechargement...
POURQUOI ?
aidez moi svppp...snif

4 réponses

dugenou Messages postés 6087 Date d'inscription mercredi 19 janvier 2005 Statut Contributeur Dernière intervention 30 juillet 2021 1 451
18 févr. 2005 à 18:35
J'ai fait une erreur de copier/coller :

if (isset($sondage_cookie) && $sondage_cookie =="VOTE"){
header("location:resultats.php");
}


else {// cookie absent (premiere vote, ou bien cookie expiré
setcookie("sondage_cookie","VOTE",time()+24*3600,"/");
{

suivi du script du sondage.

]
2
car0 Messages postés 14 Date d'inscription jeudi 27 janvier 2005 Statut Membre Dernière intervention 1 avril 2005
17 févr. 2005 à 21:28
Bonjour NeO,

Qu'entends-tu par "rechargement"? Si c'est un simple reload de la page, je ne vois pas la raison immédiatement. Par contre, si par "rechargement", tu penses au moment où l'usager revient sur ton site, c'est normal. Une variable de session est valide jusqu'au moment où l'usager quitte ton site web et/ou ferme ton navigateur. Pour pouvoir te souvenir que telle personne à voter, il te faut garder l'information sur le serveur et pouvoir lier un visiteur aux données que tu as. Deux méthodes : mettre en place un système de login (un visiteur ne peut voter que s'il se log) ou alors, tu peux aussi récupérer l'IP de la personne qui a voté (dans les variables server HTTP).

J'espère que ça t'a donner quelques indices même si ma réponse est plutôt générale...

Caro
0
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
17 févr. 2005 à 22:18
Ca n'a rien à voir avec l'erreur mais:

Empêcher de revoter en se fondant sur l'ip de celui qui vote ce sera peut être plus efficace....
0
dugenou Messages postés 6087 Date d'inscription mercredi 19 janvier 2005 Statut Contributeur Dernière intervention 30 juillet 2021 1 451
18 févr. 2005 à 18:31
Bonsoir,

Tu peux aussi utiliser un cookie pour identifier le votant.

C'est contournable par le votant, s'il refuse les cookies ou s'il efface le cookie, mais c'est une autre voie à explorer.

Sur mon site je l'utilise de cette manière, en autosisant un vote par 24 heures :

if (isset($sondage_cookie) && $sondage_cookie =="VOTE"){
header("location:resultats.php");

else {// cookie absent (premiere vote, ou bien cookie expiré
setcookie("sondage_cookie","VOTE",time()+24*3600,"/");
{

suivi du script du sondage.

Bon courage.
0