CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[PHP] Problème rafraichisement

Pwote
Pwote
Niveau 7
30 août 2014 à 01:23:20

Bonjour à tous,
Depuis maintenant presque un ans je suis sur un projet de jeu vidéo par navigateur. Aujourd'hui j'étais en train de crée un système de coffre de clan mais j'ai rencontré un problème que je n'arrive vraiment pas à surmonter.

En effet mon script est sensée trier les valeurs qui ne sont pas correcte, tout fonctionne mais voilà je rafraîchis ma page j'ai la traditionnelle message qui demande si je veux re envoyer le formulaire et là tout est deposer une nouvelle fois dans le coffre même si le joueur n'a pas les ressources.

Voilà du coup j'aimerai savoir si je pouvais contourné ce problème ou peut-être que cela viens d'une erreur dans mon code mais alors je ne la vois vraiment pas :snif:

Ici le code de traitement des données envoyer par le form: http://pastebin.com/68K1KKGF

La page entière (Même si je doute de l'utilité de ce code pour trouver le probléme: http://pastebin.com/DMRQJTzn

LECROU
LECROU
Niveau 10
30 août 2014 à 12:06:14

Je pense que tu devrais faire un rafraîchissement force avec la fonction header pour que l'utilisateur ne puisse pas re soumettre lui-même le formulaire et se créer des ressources :fou:

J'ai survolé ton code sur mon téléphone donc je te dis peut-être nimp, si c'est le cas désolé :)

vava740
vava740
Niveau 10
30 août 2014 à 12:22:05

J'ai pas regardé le code, mais si l'utilisateur peut ajouter des items qu'il n'a pas dans le coffre simplement en soumettant une requête, c'est qu'il te manque une étape de vérification.

Tu dois impérativement vérifier que la requête est valide, donc à minima regarder que l'utilisateur possède les items avant de les mettre dans le coffre (et rejeter la requête si ce n'est pas le cas).

Pour le problème du rafraîchissement de page (simplement pour éviter le message ennuyant - ça ne te dispense pas de vérifier que l'utilisateur possède bien les items au préalable), ça se fait en général avec une redirection (l'idée, c'est de ne pas rester sur une page POST).

Pwote
Pwote
Niveau 7
30 août 2014 à 20:10:47

Justement c'est ce que je ne comprend pas , j'ai une etape de vérification qui vérifie que les ressources transmises dans le coffre sont >= 0 <= au total des ressources du joueur et que le chiffre est bien un chiffre (Et par la même entier) et pourtant mon programme accepte des truc du genre -100)

vava740
vava740
Niveau 10
31 août 2014 à 10:11:40

Clairement y'a un problème avec ta vérification, mais sans le code c'est difficile à dire.

Pwote
Pwote
Niveau 7
31 août 2014 à 13:51:44

Ben il y'est en faite :hap: . Franchement ma vérification je pense qu'elle tiens la route après je peux faire des erreurs mais j'ai beau cherché je trouve vraiment pas.

vava740
vava740
Niveau 10
31 août 2014 à 14:41:49

Que je suis con. :hap:

Du coup pour la verif, tu utilise des OU quand tu veux des ET :

if (is_int($_POST["pins"]) || $_POST["pins"] >= 0 || $_POST["pins"] <= $resource["gold"])

Ici, si $_POST["pins"] est un entier, mais qu'il est inférieur à 0, ou qu'il est supérieur à $resource["gold"], ta condition passera quand même.

En français, ta condition donne « Si pins est un entier ou qu'il est >= à 0 ou qu'il est <= à gold », alors que tu veux « Si pins est un entier et qu'il est >= à 0 et qu'il est <= à gold ».

Pwote
Pwote
Niveau 7
31 août 2014 à 15:46:58

OHHHH je dois vraiment être fatigué vraiment une erreur de débutant je suis VRAIMENT désolé de vous avoir fait perdre votre temps avec ça ... Merci beaucoup

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment