|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Benjamin Étudiant Inscription : décembre 2011 Messages : 4 ![]() |
Bonjour,
J'ai appris le PHP récemment, et j'ai refais pour m'amuser le Facemash de Mark Zuckerberg. Lorsqu'on clique sur une image on arrive sur un lien de la forme "http://localhost/score.php?nom=photo26.jpg" (redirection ensuite vers index.php), ce qui augmente le score de la photo26 de 1 point. Le souci est que si on tape cette URL dans la barre d'adresse et qu'on répète plusieurs fois on peut augmenter le score de l'image à volonté. J'aimerais bien que la seule façon d'augmenter le score soit de passer par le lien présent sur l'image. Je ne suis pas un prodige de la programmation Merci de votre aide. PS : désolé j'ai pas trouvé mieux comme titre... |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() ![]() |
Bonsoir,
Tu peux très bien passer un argument supplémentaire à ton lien qui te permettra d'incrémenter le compteur uniquement si l'argument est présent.
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
|
00
|
|
|
#3 |
|
Invité de passage
![]() Benjamin Étudiant Inscription : décembre 2011 Messages : 4 ![]() |
Merci de ta réponse,
Mais si tu fais un clic droit sur l'image -> copier le lien... tu as récupère quand même l'argument (score.php?nom=photo26.jpg&argument=argument). Je vois pas comment tu veux faire. |
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() ![]() |
Oui, j'aurais dû préciser : il faut générer un token que tu stockes dans une table que tu passes en arguments au lien. Quand quelqu'un clique sur l'image, le lien enverra le token, tu vérifies s'il existe dans ta table et si oui, tu incrémentes le compteur. Une fois le token utilisé, il est supprimé. Ensuite tu sers l'image.
Tu mets une durée de vie au token. Une autre approche est de générer un identifiant expirable et tu l'ajoutes au lien.
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
|
00
|
|
|
#5 |
|
Invité de passage
![]() Benjamin Étudiant Inscription : décembre 2011 Messages : 4 ![]() |
Super merci beaucoup,
Je vais chercher dans le sens de l'id expirable, je ne sais pas ce que c'est un token (vague idée...). |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Benjamin Étudiant Inscription : décembre 2011 Messages : 4 ![]() |
Bon,
j'ai fait un petit session_start() Ensuite j'ai utilisé une fonction qui fait un random alphanumérique avec 100 caractères. On compare les deux codes et si ils sont pas identique on refuse le vote. Merci de votre aide ça marche nikel. |
|
|
00
|
|
|
#7 |
|
Membre chevronné
![]() Ingénieur développement logiciels Inscription : février 2008 Messages : 430 ![]() |
Maintenant, tu sais ce qu'est un token
__________________
Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre. Linus Torvalds |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com