De la page 1 à 2, ça va, mais de la page 2 à 3, je vois pas

Statut
N'est pas ouverte pour d'autres réponses.

TheNastyBoy

B0rn t0 b3 r00t
Hello !

Voici mon souci : je code un module d'inscription pour un site communautaire en PHP/MySQL, et j'ai des difficultés.
L'architecture est la suivante :
- page 1 : formulaire
- page 2 : récupération des données du formulaire par méthode POST, traitement et affichage pour demander au visiteur si les données sont exactes. Deux boutons, précédent et envoyer.
- page 3 : récupération des données traitées dans la page 2 et enregistrement dans la base de données.

J'essaie de faire cela avec un maximum de sécurité, du coup j'ai écarté les possibilités suivantes pour faire passer les valeurs :
- deuxième formulaire avec les valeurs dans des champs de type "hidden", car il est possible de modifier la page web (click doit + afficher la source powaa)
- méthode GET car les données passent en clair sur la barre d'url et si j'ai fait des tests sur les données avant, c'est pas pour qu'on les modifie...


A vôtre avis je fais comment?
 

Ezekiel !

Elite
ben moi jutilise la premiere methode (champ hidden) sinon ben tu fais un insert dans ta table sql mais tu rajoutes un champs confirme...
 

Jereck

Α & Ω
Staff
une idée comme ça, mais je ne sais pas à quel point c'est réalisable :
la page 2 crée un fichier avec toutes les infos entrées et acceptées.
dans un champ Hidden, tu stocke le nom du fichier temporaire (genre md5 sur time() ou un truc du genre pour te donner un numéro unique.)
La page 3 relis ce fichier (elle a bien reçu le nom via POST) insère dans la table et supprime le fichier.

dans le cas où il clique sur précédent ...
ben ça dépends :
- si l'utilisateur doit TOUT ré-entrer, alors tu passe par une page 4 qui vire le fichier (nom reçu par POST aussi) puis ré-envoie sur la page 1 (header("Location:...")
- si tu veux remettre les données "invalides" de l'utilisateur dans le formulaire pour qu'il ne modifie que ce qu'il veut, tu fait comme la page 3, sauf que tu affiche au lie d'insérer dans la table.
 
J

j0k3r_n0ir

ex membre
Oula stop !
Ne vous embarquez pas dans des trucs de fou furieux ! ^^

Utilise tout simplement les sessions.
Tu stockes toutes tes infos dans une session et comme ça personne pourra les voir, et toi tu les récupere pépère dans ta troisieme page.
 

Ezekiel !

Elite
j0k3r_n0ir a dit:
Oula stop !
Ne vous embarquez pas dans des trucs de fou furieux ! ^^

Utilise tout simplement les sessions.
Tu stockes toutes tes infos dans une session et comme ça personne pourra les voir, et toi tu les récupere pépère dans ta troisieme page.
lol pk faire simple quand on pt faire compliqué ^^
 

Jereck

Α & Ω
Staff
j0k3r_n0ir a dit:
Oula stop !
Ne vous embarquez pas dans des trucs de fou furieux ! ^^

Utilise tout simplement les sessions.
Tu stockes toutes tes infos dans une session et comme ça personne pourra les voir, et toi tu les récupere pépère dans ta troisieme page.
Mouahahaha ^^'
(pkoi j'y ait pas pensé, c'est justement ce que je suis en train de mettre sur mon site)
 
1er
OP
TheNastyBoy

TheNastyBoy

B0rn t0 b3 r00t
Je viens de voir sur ce PDF une manière d'utiliser la méthode POST autrement que par un formulaire (section 8.2 je crois), selon vous c'est jouable?

Les sessions j'y ai pensé, je ne l'ai pas cité pour influencer personne. S'il n'y a aucun commentaire sur le PDF, et que je n'arrive à rien avec je me rabattrai sur les sessions.

Merci !
 
J

j0k3r_n0ir

ex membre
Faut déjà que ton hébergeur accepte la fonction fsockopen, ce qui n'est pas forcément le cas de tous ... ovh par exemple.

Oé vous m'avez fait peur avec vos propositions ^^
Je pense que le mieux c'est d'utilisé les sessions plutot que le reste.
 
1er
OP
TheNastyBoy

TheNastyBoy

B0rn t0 b3 r00t
Je prend note pour la fonction fsockopen, merci du tuyau ;)
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut