Eléphant du PHP |
120 Messages
22 juil. 2015, 16:16
Bonjour à tous,
j'ai mis en place un module d'admin de gestion de site web pour modifier le contenu des pages de mon site. J'ai donc un formulaire de saisie, j'envoie les variables en $_POST à la page de mise à jour de la base, par exemple.
Le probleme, c'est que certains utilisateurs du module d'admin passent parfois par le bouton retour du navigateur au cours de leurs modifs, si bien que je me suis retrouvé quelques fois avec un chargement de la page contenant l'enregistrement en base sans que les utilisateurs arrivent de la page de saisie, donc les $_POST sont vides, et ca efface le contenu de cet enregistrement, je perds donc le contenu de toute la page...
Alors, au delà de leur dire de ne pas utiliser les boutons retour dans le module d'admin, j'aimerai sécuriser l'enregistrement pour éviter l'effacement. Je pensais me baser sur le fait que les $_POST soient vides, mais parfois certains champs sont vides... ou alors il faudrait controler que dans le cas où tous sont vides, alors c'est qu'il y a une soucis, on enregistre pas...mais ca me parait tordu comme processus.
je pensais regarder du coté de HTTP_REFERER pour vérifier que l'utilisateur arrive bien de ma page de saisie contenant le formulaire (et donc les $_POST ne sont pas vides) mais il parait que ca ne marche que si l'utilisateur l'autorise ?! Du coup, est vraiment la meilleure solution ?
Quel est selon vous la meilleure stratégie ? J'imagine que dans un module d'admin bien conçu, ce genre de problematique est monnaie courante ?...
merci de votre aide
si tu as un soucis en informatique, dis toi bien que quelqu'un d'autre l'a eu avant toi