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 :

Pb formulaire


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 15
    Par défaut Pb formulaire
    Salut à tous,
    mon pb est le suivant : j'ai une page php qui contient des formulaires que je traite avec la methode POST et l'action $_SERVER[PHP_SELF] aprés avoir envoyer les données avec un boutton submit je traite les données normalement mais si je rafraichis la page les donner sont traités une 2 fois comment faire pourque cela n'arrive pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
     
    ?php
      if(!is_null($_POST['Clicks']))
      {
        $file=fopen("count","a+");
        fwrite($file,$_POST['Click']);
        fclose($file);
        $_POST['Clicks']=0;
      }
    ?>
    <html>
    <head>
    <title></title>
    </head>
    <body    bgcolor="#000000">
    <div align="center">
        <table border="1" cellspacing="1" cellpadding="1">
            <tr>
     
                <td    valign="top">
                    <table    width=150 border="1"    cellspacing="1"    cellpadding="1">
                        <tr>
                            <td></td>
                        </tr>
                    </table>
                </td>
     
                <td    valign="top">
                    <table    width=650 border="1"    cellspacing="1"    cellpadding="1">
                        <tr>
                            <td></td>
                        </tr>
                    </table>
                </td>
     
                <td    valign="top">
                    <table    width=100 border="1"    cellspacing="1"    cellpadding="1">
                    <form method="POST" action="<?php $_SERVER[PHP_SELF] ?>">
                        <tr>
                            <td    valign="top">
                                <table width="100%"    border="1" cellspacing="1" cellpadding="1">
                                    <tr    height=20>
                                        <td    bgcolor="#0000FF"    align="center">
                                            <p style="font-family:verdana;color:#E5F2FF;font-size:11px;font-weight:bold;vertical-align:middle">
                                                Sondage
                                            </p>
                                        </td>
                                    </tr>
                                    <tr    height=20>
                                        <td    bgcolor="#E5F2FF">
                                            <p style="font-family:verdana;color:#0000FF;font-size:11px;font-weight:bold;vertical-align:middle">    
                                                <input type="radio"     name="Click"    id="Click" value="1" style="vertical-align:middle;"    align="left">
                                                1
                                            </p>
                                        </td>
                                    </tr>
                                    <tr    height=20>
                                        <td    bgcolor="#E5F2FF"    height=19>
                                            <p style="font-family:verdana;color:#0000FF;font-size:11px;font-weight:bold;vertical-align:middle">
                                                <input type="radio"     name="Click"    id="Click" value="2" style="vertical-align:middle;"    align="left">
                                                2
                                            </p>
                                        </td>
                                    </tr>
                                    <tr    height=20>
                                        <td    bgcolor="#E5F2FF">
                                            <p style="font-family:verdana;color:#0000FF;font-size:11px;font-weight:bold;vertical-align:middle">
                                                <input type="radio"     name="Click"    id="Click" value="3" style="vertical-align:middle;"    align="left" checked>
                                                3
                                            </p>
                                        </td>
                                    </tr>
                                    <tr    height=20>
                                        <td    bgcolor="#E5F2FF">
                                            <p style="font-family:verdana;color:#0000FF;font-size:11px;font-weight:bold;vertical-align:middle">
                                                <input type="radio"     name="Click"    id="Click" value="4" style="vertical-align:middle;"    align="left">
                                                4
                                            </p>
                                        </td>
                                    </tr>
                                        <tr    height=20>
                                        <td    bgcolor="#E5F2FF">
                                            <p style="font-family:verdana;color:#0000FF;font-size:11px;font-weight:bold;vertical-align:middle">
                                                <input type="radio"     name="Click"    id="Click" value="5" style="vertical-align:middle;"    align="left">
                                                5
                                            </p>
                                        </td>
                                    </tr>
                                    <tr    height=20>
                                        <td    bgcolor="#0000FF"    align=center>
                                            <input type=submit value=voter style="border-width:0px;border-color:#0000FF;color=#0000FF;background-color=#E5F2FF;font-family:verdana;font-size:11px;vertical-align:middle;">
                                            <input type="hidden" name="Clicks" value="1"> 
                                        </td>
                                    </tr>
                                    <tr    height=20>
                                        <td    bgcolor="#0000FF"    align=center>
                                            <p style="font-family:verdana;color:#E5F2FF;font-size:11px;font-weight:bold;vertical-align:middle;">
                                                <a href="">Résultat</a>
                                            </p>
                                        </td>
                                    </tr>
                                    <tr    height=20>
                                        <td    bgcolor="#0000FF"    align=center>
                                            <p style="font-family:verdana;color:#E5F2FF;font-size:11px;font-weight:bold;vertical-align:middle">
                                                <?php
                                                    print"$_SERVER[REMOTE_ADDR]";
                                                ?>
                                            </p>
                                        </td>
                                    </tr>
                                    <tr    height=20>
                                        <td    bgcolor="#0000FF"    align=center>
                                            <p style="font-family:verdana;color:#E5F2FF;font-size:11px;font-weight:bold;vertical-align:middle">
                                                <?php
                                                    print"$_SERVER[REMOTE_PORT]";
                                                ?>
                                            </p>
                                    </td>
                                </tr>
                                </form> 
                             </table>
                            </td>
                        </tr>
                    </table>
                </td>
     
            </tr>
        </table>
    </div>
    </body>
    </html>

  2. #2
    Membre émérite
    Avatar de ozzmax
    Inscrit en
    Novembre 2005
    Messages
    977
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2005
    Messages : 977
    Par défaut
    salut
    ouais j'ai ce genre de situation moi aussi
    je te dis comment j'ai contourné la situation:

    Le principe est un peu comme tu fais avec une validation isset...mais il te faut une page de provenance que tu peux garder en session

    ainsi tu valide si ta variable de session est setté si oui...il faut que tu valide de quelle page ca vient
    donc prennons comme exemple, t'as une page ajout_usager.php... cette page est accessible a partir de ta page d>'acceuil seulement donc accessible de home.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    //home.php
    //t'enregistre ta variable
    session_start();
     
    $_session['pageProvenance'] = "home.php";
    .....
     
    //--------------------------------------
     
    //ajout_usager.php
    //tu valides
    if(isset($_session['pageProvenance']) && $_session['pageProvenance'] == "home.php){
    //comme ca vient de la page home.php
    //tu modifie la variable
    $_session['pageProvenance'] = "ajout_usager.php";
     
    ....
    }
    else if(!isset($_session['pageProvenance']) || $_session['pageProvenance'] != "home.php"){
     
    //tu le rediriges vers ta page d'acceuil..dépendant de ce que tu veux faire...
    //moi dans ma page d'acceuil je place un message du genre...utiliser les bouton de navigations s'il vous plait
    }
    Alors comme ca...lorsque la personne fait un retour à la page précédente ou encore un rafraichir (f5)..ca ne validera pas une 2e fois ton formulaire donc sa empeche de faire de nouveau ajout dans ta bd du meme coup!

    Alors adapte ca a ton code et j'espere t'avoir mis sur une piste
    bonne journée
    max

  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur
    Inscrit en
    Août 2003
    Messages
    1 530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Août 2003
    Messages : 1 530
    Par défaut
    Remplace :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form method="POST" action="<?php $_SERVER[PHP_SELF] ?>">
    Par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form method="POST" action="<?php=$_SERVER['PHP_SELF'] ?>">
    Tu as oublié d'afficher le texte et de mettre les quotes.

  4. #4
    Inactif
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 15
    Par défaut
    Merci à tous

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

Discussions similaires

  1. Création d'un formulaire sous flash?
    Par ultrakas dans le forum Flash
    Réponses: 5
    Dernier message: 11/01/2005, 19h33
  2. [CR][Access] intégrer un viewer dans un formulaire access
    Par nicolak dans le forum SAP Crystal Reports
    Réponses: 7
    Dernier message: 13/01/2003, 16h52
  3. []Problème avec les formulaires Outlook
    Par Invité dans le forum Outlook
    Réponses: 6
    Dernier message: 05/12/2002, 10h59
  4. [VB6][Formulaire]Appliquer un Scrollbar a une Form
    Par Boil dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 09/11/2002, 04h51
  5. [CR] Tranfert de formulaire a travers une page HTMl
    Par LIEU dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 12/09/2002, 09h37

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