Ajouter un module de memorisation d'ip ou cookie

[Résolu]
Signaler
Messages postés
118
Date d'inscription
mardi 26 avril 2005
Statut
Membre
Dernière intervention
15 janvier 2007
-
Messages postés
392
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
26 septembre 2009
-
Bonjour a tous,
Je n'ai pas l'habitude de faire ça, mais j'en aurais plutot besoin voici un code au quel je voudrais bien ajouter un module de saisie d'ip ou de cookie pour que le vote ne soit ajoutable qu'une fois.
Merci a tous

4 réponses

Messages postés
947
Date d'inscription
mercredi 19 novembre 2003
Statut
Membre
Dernière intervention
5 avril 2008
3
Bonjour,

<?php au lieu de <?

Tout tableau de type array commance a 0
$reponse[1] = 'Bien';
$reponse[2] = 'Moyen';
$reponse[3] = 'Mauvais';
devient:
$reponse[0] = 'Bien';
$reponse[1] = 'Moyen';
$reponse[2] = 'Mauvais';
ou meme $reponse[] = ...

Pour $choix, il suffit de le placer juste apres les $reponses => $choix = count($reponse);

Tu ne verifit pas si les fichiers ont bien été ouvert sans erreur, ce qui peux etre tres tres genant pour le reste.

Juste apres if (isset($_GET['vote'])) , quelque chose comme:
if (isset($_COOKIE['deja'])) { exit('deja voter!'); }

Tu devrais verifier la valeur de $vote, => if (ctype_digit($vote) AND $vote >= 0 AND $vote <= $choix) { // OK

Des que la personne a voter, ont lui incruste un cookie:
setcookie('deja', 'oui', time()+3600); /* expire dans une heure */
comme dit sur la page de nexen.net

et comme dit:
Les cookies doivent passer avant tout autre en-tête (c'est une restriction des cookies, pas de PHP). Cela vous impose d'appeler cette fonction avant toute balise <html> ou <head> . Si quelque chose a été envoyé avant l'appel à cette fonction, setcookie échouera et retournera FALSE . Si setcookie réussi, elle retournera TRUE . Cela n'indique pas si le client accepte ou pas le cookie.

Donc tu peux aussi verifier si le cookie a bien été envoyer.

Pour l'ip faudrais utiliser un second fichier et que tu mettent les ip au fur et a mesure:
$IP\n
Et que tu lise le fichier ligne/ligne pour verifier qu'il n'est pas deja present.

http://www.nexen.net/docs/php/annotee/function.setcookie.php
Messages postés
392
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
26 septembre 2009

Bonjour, je ne pense pas que l'utilisation de l'ip est une bonne idée car si tu veux que l'on ne puisse pas revoter avec 10 jours par exemple, l'ip a le temps de changer ^^.
A++
<hr size="2" width="100%">Si un des membres à poster une reponse qui convient, accepter là !
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
Salut,

à mon avis le plus efficace :

- inscription (donc pseudo unique)
- cookie
- ip
- session

combine les quatre, après je pense pas qu'il y ait d'autres possibilités (y'a bien l'host mais bon ça risque de limiter...)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
392
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
26 septembre 2009

Oui, c'est sur avec tout ca ...
A++
<hr size="2" width="100%">Si un des membres à poster une reponse qui convient, accepter là !