Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/09/2007, 22h17   #1
Membre régulier
 
Avatar de bilou95
 
Inscription : septembre 2006
Messages : 433
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 433
Points : 79
Points : 79
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 !!!!
bilou95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2007, 22h41   #2
Membre habitué
 
Expert Support Applicatif
Inscription : mars 2007
Messages : 158
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Territoire de Belfort (Franche Comté)

Informations professionnelles :
Activité : Expert Support Applicatif
Secteur : Distribution

Informations forums :
Inscription : mars 2007
Messages : 158
Points : 140
Points : 140
Heu...

Tu pourrais montrer ton code stp...
Alex70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2007, 22h48   #3
Membre régulier
 
Avatar de bilou95
 
Inscription : septembre 2006
Messages : 433
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 433
Points : 79
Points : 79
Voici mon code.

Code :
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;
bilou95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2007, 23h03   #4
Membre habitué
 
Expert Support Applicatif
Inscription : mars 2007
Messages : 158
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Territoire de Belfort (Franche Comté)

Informations professionnelles :
Activité : Expert Support Applicatif
Secteur : Distribution

Informations forums :
Inscription : mars 2007
Messages : 158
Points : 140
Points : 140
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.
Alex70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2007, 23h07   #5
Membre régulier
 
Avatar de bilou95
 
Inscription : septembre 2006
Messages : 433
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 433
Points : 79
Points : 79
Comme ca ???????

Code :
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;
bilou95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2007, 23h09   #6
Membre habitué
 
Expert Support Applicatif
Inscription : mars 2007
Messages : 158
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Territoire de Belfort (Franche Comté)

Informations professionnelles :
Activité : Expert Support Applicatif
Secteur : Distribution

Informations forums :
Inscription : mars 2007
Messages : 158
Points : 140
Points : 140
Ben oui... Enfin je ferais comme ça.
Alex70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2007, 23h24   #7
Membre régulier
 
Avatar de bilou95
 
Inscription : septembre 2006
Messages : 433
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 433
Points : 79
Points : 79
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à !!!!!!

???????????????
bilou95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2007, 23h30   #8
Membre habitué
 
Expert Support Applicatif
Inscription : mars 2007
Messages : 158
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Territoire de Belfort (Franche Comté)

Informations professionnelles :
Activité : Expert Support Applicatif
Secteur : Distribution

Informations forums :
Inscription : mars 2007
Messages : 158
Points : 140
Points : 140
comment ça il te fais tout les updates ?
Alex70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2007, 09h23   #9
Membre régulier
 
Avatar de bilou95
 
Inscription : septembre 2006
Messages : 433
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 433
Points : 79
Points : 79
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 !
bilou95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2007, 11h10   #10
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
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.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2007, 12h47   #11
Membre régulier
 
Avatar de bilou95
 
Inscription : septembre 2006
Messages : 433
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 433
Points : 79
Points : 79
Je suis complétement perdu.
bilou95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2007, 13h31   #12
Membre régulier
 
Avatar de bilou95
 
Inscription : septembre 2006
Messages : 433
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 433
Points : 79
Points : 79
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 ... ???????
bilou95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h06.


 
 
 
 
Partenaires

Hébergement Web