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

Discussion dans 'Web, design' créé par TheNastyBoy, 9 Février 2005.

Statut de la discussion:
Fermée.
  1. Offline
    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?
    TheNastyBoy, 9 Février 2005
    #1
  2. Offline
    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...
    Ezekiel !, 9 Février 2005
    #2
  3. Online
    Jereck Procrastinateur
    Equipe GamerZ.be
    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.
    Jereck, 9 Février 2005
    #3
  4. Offline
    j0k3r_n0ir ex membre
    Oula stop !
    Ne vous embarquez pas dans des trucs de fou furieux ! :p

    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.
    j0k3r_n0ir, 9 Février 2005
    #4
  5. Offline
    Ezekiel ! Elite
    lol pk faire simple quand on pt faire compliqué :p
    Ezekiel !, 9 Février 2005
    #5
  6. Online
    Jereck Procrastinateur
    Equipe GamerZ.be
    Mouahahaha :p'
    (pkoi j'y ait pas pensé, c'est justement ce que je suis en train de mettre sur mon site)
    Jereck, 9 Février 2005
    #6
  7. Offline
    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 !
    TheNastyBoy, 9 Février 2005
    #7
  8. Offline
    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 :p
    Je pense que le mieux c'est d'utilisé les sessions plutot que le reste.
    j0k3r_n0ir, 9 Février 2005
    #8
  9. Offline
    TheNastyBoy B0rn t0 b3 r00t
    Je prend note pour la fonction fsockopen, merci du tuyau ;)
    TheNastyBoy, 9 Février 2005
    #9
Statut de la discussion:
Fermée.