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 :

Envoi formulaire - valeur postée reste en mémoire ! - Pourquoi ?


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut Envoi formulaire - valeur postée reste en mémoire ! - Pourquoi ?
    Je ne comprends pas dés que je valide ou j'envoie un formulaire en méthode "POST", la valeur sélectionnée reste en mémoire ... Est ce normal ?

    Du coup vu que j'ai appliqué une boucle If pour tester si un champ d'une table est vide ou rempli ... si c le cas, il me fait un UPDATE avec la valeur postée sur le champ concerné de la table.

    A savoir que j'ai testé le unset() qui détruit une variable mais ca ne marche pas !!!!

  2. #2
    Membre averti
    Homme Profil pro
    Responsable des études
    Inscrit en
    Mars 2007
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2007
    Messages : 267
    Points : 367
    Points
    367
    Par défaut
    Heu...

    Tu pourrais montrer ton code stp...

  3. #3
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Voici mon code.

    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
    //Zone de modification pour le(s) satelisés
     
     
       echo'<form method="POST" name="maj_sat_qui" onsubmit="return refresh(this)" Action="index.php?numlien=Det_Etablissement&id='.$id.'"><SELECT size="1" name="satelise" id="satelise_mdf" style="visibility: hidden">';     
       echo'<option SELECTED></OPTION>';
     
       $var_sat=$_POST['satelise'];
     
       $Stlise=mysql_fetch_assoc($Lets_satelise1);
     
     
       if(isset($var_sat)) {
    				if($Stlise['Satellise_Qui'] == "")
    				{
    	$sql_satelise="UPDATE etablissement SET Satellise_Qui='$var_sat' WHERE IdEtb='$id'";
    	$exe_sqlsatelise = mysql_query($sql_satelise) or die ('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
     
    	            }
     
    	            Elseif($Stlise['Satellise_Qui1'] == "")
    				{
    	$sql_satelise1="UPDATE etablissement SET Satellise_Qui1='$var_sat' WHERE IdEtb='$id'";
    	$exe_sqlsatelise1 = mysql_query($sql_satelise1) or die ('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
     
    	            }
     
    	           Elseif($Stlise['Satellise_Qui2'] == "")
    			   {
    	$sql_satelise2="UPDATE etablissement SET Satellise_Qui2='$var_sat' WHERE IdEtb='$id'";
    	$exe_sqlsatelise2 = mysql_query($sql_satelise2) or die ('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
     
    			   }
    unset($var_sat);
    			   }	
     
     
     
       while($dataEts1=mysql_fetch_array($RLets1))
       {
       echo'<option>'.$dataEts1['Etablissement'].'</option>';
       }
     
     
     
     
     
       echo'</SELECT><input value="Ok" id="input_OK2" style="visibility: hidden" type="submit" onClick="form_satelise_qui();"><IMG src="image/cancel.png" id="iddelimgannulsatelise" style="visibility: hidden" style="border:"0" onclick="satelise_ann();"></form></td>';echo $var_sat;

  4. #4
    Membre averti
    Homme Profil pro
    Responsable des études
    Inscrit en
    Mars 2007
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2007
    Messages : 267
    Points : 367
    Points
    367
    Par défaut
    Tu fais un unset si la valeur est vide... il faut faire ton unset lorsque tu sais que ta variable posséde une valeur, je le ferais après que t'es fait ton update (puiceque tu n'en fait qu'un sur les 3).
    Enfin si tu veux détruire ta variable après avoir fait ton update.

  5. #5
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Comme ca ???????

    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
     //Zone de modification pour le(s) satelisés
     
     
       echo'<form method="POST" name="maj_sat_qui" onsubmit="return refresh(this)" Action="index.php?numlien=Det_Etablissement&id='.$id.'"><SELECT size="1" name="satelise" id="satelise_mdf" style="visibility: hidden">';     
       echo'<option SELECTED></OPTION>';
     
       $var_sat=$_POST['satelise'];
     
       $Stlise=mysql_fetch_assoc($Lets_satelise1);
     
     
       if(isset($var_sat)) {
    				if($Stlise['Satellise_Qui'] == "")
    				{
    	$sql_satelise="UPDATE etablissement SET Satellise_Qui='$var_sat' WHERE IdEtb='$id'";
    	$exe_sqlsatelise = mysql_query($sql_satelise) or die ('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
    			 unset($var_sat);
    	            }
     
    	            Elseif($Stlise['Satellise_Qui1'] == "")
    				{
    	$sql_satelise1="UPDATE etablissement SET Satellise_Qui1='$var_sat' WHERE IdEtb='$id'";
    	$exe_sqlsatelise1 = mysql_query($sql_satelise1) or die ('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
    			 unset($var_sat);
    	            }
     
    	           Elseif($Stlise['Satellise_Qui2'] == "")
    			   {
    	$sql_satelise2="UPDATE etablissement SET Satellise_Qui2='$var_sat' WHERE IdEtb='$id'";
    	$exe_sqlsatelise2 = mysql_query($sql_satelise2) or die ('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
    		   unset($var_sat);
    			   }
    			   }	
     
     
     
       while($dataEts1=mysql_fetch_array($RLets1))
       {
       echo'<option>'.$dataEts1['Etablissement'].'</option>';
       }
     
     
     
     
     
       echo'</SELECT><input value="Ok" id="input_OK2" style="visibility: hidden" type="submit" onClick="form_satelise_qui();"><IMG src="image/cancel.png" id="iddelimgannulsatelise" style="visibility: hidden" style="border:"0" onclick="satelise_ann();"></form></td>';echo $var_sat;

  6. #6
    Membre averti
    Homme Profil pro
    Responsable des études
    Inscrit en
    Mars 2007
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2007
    Messages : 267
    Points : 367
    Points
    367
    Par défaut
    Ben oui... Enfin je ferais comme ça.

  7. #7
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Non ca ne marche pas !

    Il m'incrémente a chaque fois les champs concernés par la valeur de mon POST je comprends rien du tout là !!!!!!

    ???????????????

  8. #8
    Membre averti
    Homme Profil pro
    Responsable des études
    Inscrit en
    Mars 2007
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2007
    Messages : 267
    Points : 367
    Points
    367
    Par défaut
    comment ça il te fais tout les updates ?

  9. #9
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    a chaque fois que je fais un F5 (rafraichissement), j'ai l'impression que la valeur sélectionné ou postée est toujours en mémoire ... Dés que je rafraichis la page, il re-rentre dans ma boucle et me mets a jour les champs a la suite ...

    je comprends rien a ce code ... désespéré je suis !

  10. #10
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    C'est normal, c'est le client qui vous refait parvenir les données POST puisqu'il demande une nouvelle fois cette même page (qui n'a plus rien à voir avec le précédent appel). Il faut procéder à une redirection sinon je pense qu'il est possible de marquer ce passage à l'aide de cookie/session.

  11. #11
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Je suis complétement perdu.

  12. #12
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    le probleme c'est que ma redirection doit etre ma page actuelle ...

    Comme ci il faisait un "refresh" de la page c'est déja la cas par une fonction javascript ...

    Ensuite, je ne sais pas quoi mettre ... ???????

Discussions similaires

  1. [PHP 5.3] envoie formulaire par post à la meme page
    Par titi12100 dans le forum Langage
    Réponses: 6
    Dernier message: 12/07/2012, 09h34
  2. [PHP 5.3] envoi formulaire par post à la meme page
    Par titi12100 dans le forum Langage
    Réponses: 8
    Dernier message: 05/07/2012, 07h25
  3. Envoi d'un formulaire en POST sur un site distant
    Par malag dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 12/09/2006, 18h06
  4. [MySQL] Envoi d'images par formulaire et post-traitement
    Par mathieu7497 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 08/04/2006, 13h58
  5. envoie de valeur d'un formulaire vers un autre
    Par kleenex dans le forum Access
    Réponses: 7
    Dernier message: 03/10/2005, 16h55

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