IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

ne pas conserver les variables $_POST en mémoire


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Inscrit en
    Septembre 2007
    Messages
    199
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 199
    Points : 148
    Points
    148
    Par défaut ne pas conserver les variables $_POST en mémoire
    Salut,
    j´ai été surpris de ne pas trouver un message tel que celui la déja posté mais ca a l´air le cas.
    J´ai un formulaire qui renvoie sur une page ou j´enregistre les donnees.
    Seulement, si je fais un retour ou un actualiser par exemple, j´enregistre 2 fois les memes donnees.
    Quelle est la meilleure technique pour remédier a ca ?

    Merci

  2. #2
    Membre confirmé
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    430
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2006
    Messages : 430
    Points : 557
    Points
    557
    Par défaut
    Donc tu as:
    Formulaire > Page de confirmation

    C'est cela?
    Si oui, alors en général pour contourner ce soucis, tu peux utiliser un script intermédiaire qui fait l'insert avant la page de confirmation

    Formulaire > Script d'insert (puis header('location: confirmation.php)) > Page de confirmation

    Un refresh sur la page de confirmation ne te posera plus le problème des données repostées à nouveau.
    Merci à Microsoft pour avoir transformé un métier relativement terne et basé sur une approche bêtement technique et rigoureuse des faits, en challenge quotidien, nécessitant une remise en question permanente à l'échelle du quart d'heure

  3. #3
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Tu peux aussi ajouter une clé dans un champs caché de ton formulaire.
    Cette clé n'est utilisable qu'une seule fois...
    De retour parmis vous après 10 ans!!

  4. #4
    Membre habitué
    Inscrit en
    Septembre 2007
    Messages
    199
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 199
    Points : 148
    Points
    148
    Par défaut
    Merci bkill et Sub0, mais pourrai-je, sans vouloir abusé avoir un tit exemple concret svp.

    La clef utilisable qu´une fois je vois pas trop comment la mettre en pratique.
    De meme, je vois pas trop apres le script d´insert comment faire intervenir le header ?

    Merci

  5. #5
    Membre confirmé
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    430
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2006
    Messages : 430
    Points : 557
    Points
    557
    Par défaut
    ex:

    formulaire.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    ...
    <form method="post" action="send_do.php">
      <input type="text" name="lastname" />
      <input type="submit" name="submit" value="send!" />
    </form>
    ...
    send_do.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?php
    // tout le code d'insertion des données dans ta DB, ou envoi d'email, ou...
    // puis:
    header('location: confirmation.php');
    exit;
    ?>
    et enfin, confirmation.php, qui contient simplement le code HTML de... confirmation.
    Merci à Microsoft pour avoir transformé un métier relativement terne et basé sur une approche bêtement technique et rigoureuse des faits, en challenge quotidien, nécessitant une remise en question permanente à l'échelle du quart d'heure

  6. #6
    Membre habitué
    Inscrit en
    Septembre 2007
    Messages
    199
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 199
    Points : 148
    Points
    148
    Par défaut
    ok!
    Un grand merci a toi bkill !
    Et aussi, Sub0

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ne pas déclarer les variables
    Par Loki83 dans le forum Macros et VBA Excel
    Réponses: 20
    Dernier message: 14/11/2008, 15h27
  2. Ne pas conserver les documents imprimés
    Par SamLeChiseuji dans le forum Windows XP
    Réponses: 2
    Dernier message: 09/11/2007, 08h33
  3. Tests sur les variables $_POST
    Par ozzmax dans le forum Langage
    Réponses: 5
    Dernier message: 02/11/2006, 03h41
  4. Recuperer les variables $_POST
    Par casa13 dans le forum Langage
    Réponses: 15
    Dernier message: 03/01/2006, 16h33
  5. [Sécurité] Ne pas afficher les variables de l'URL
    Par Wormus dans le forum Langage
    Réponses: 17
    Dernier message: 23/10/2005, 14h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo