[PHP] Requete SQL sur un bouton

Fermé
MaO - 6 juin 2007 à 10:10
 invite - 28 juil. 2010 à 15:09
Bonjour,

J'aimerais que lorsque je clique sur mon bouton , la requete UPDATE... s'execute !


	?>
				<form method="post" action="" name="TableauRech">
				<?
A voir également:

37 réponses

oula...tu sait en php je débute !!!

se que je comprend pas c'est que dans le deux formulaire il reconnais le prenom et le nom...:s
0
Dracwolf Messages postés 34 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 10 janvier 2014 14
7 juin 2007 à 09:28
Déjà c'est pas du php mais du html et en gros ta juste a supprimer la premiere balise </form> et la seconde <form name="frm_recherche" action="" method="post"> c'est tout.

Ensuite il reconnais quoi exactement ? Pour le savoir avec exactitude mais au debut de ton code un echo de toute tes variables et met en com les lignes qui vont pas.
0
Donc alors j'ai fait se que tu m'a dit!

le echo au debut me dit qu'il ne reconnais aucune variable .../S
0
Dracwolf Messages postés 34 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 10 janvier 2014 14
7 juin 2007 à 09:52
met ça à la place des echo et montre moi ce que ça t'affiche après la validation du formulaire :
   <? foreach($_POST as $key=>$value)
         {
                echo $key." => ".$value;
         }
   ?>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
txtnomRech => atxtprenomRech => aValid => 1submit_recherche => Rechercher
0
telport => 1111111telfixe => psubmit_modif => Modifier
0
Dracwolf Messages postés 34 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 10 janvier 2014 14
7 juin 2007 à 10:18
Pourquoi en as tu 2 differrents ? as tu fusionner les formulaires ?
0
Ouai j'ai enlever se que tu ma dit...

<?
if (isset($_POST['submit_modif']) && $_POST['submit_modif']!="") 
{  
require ("..\connect.php");
$requete = mysql_query ("UPDATE personnel SET TEL_POR='".$_POST['telport']."', TEL_FIXE='".$_POST['telfixe']."'
						WHERE NOM LIKE '".$_POST['txtnomRech']."%'
						AND PRENOM LIKE '".$_POST['txtprenomRech']."%'");
}
?>	
<fieldset style="width: 600px"> 
<legend>Modifier une personne</legend> 
<table> 
<? echo "<a href='Modifpersindex.php'>retour</a>"; 
if(isset($_POST["Valid"]))//vérifie si on a cliquer sur rechercher 
{ 
?> 
<? 
	if ($_POST['txtnomRech'] != "" || $_POST['txtprenomRech'] != "")//vérifie si les zones de texte nom et prénom ne son pas vide 
	{ 
	?> 
	
	<form method="post" action="" name="TableauRech"> 
	<? 
		 
		require ("..\connect.php");
		$reqmodif = "SELECT * FROM personnel 
		WHERE NOM LIKE '".$_POST['txtnomRech']."%' 
		AND PRENOM LIKE '".$_POST['txtprenomRech']."%' "; 
		$Resultatmodif = mysql_query($reqmodif); 
		$Modif = mysql_fetch_array($Resultatmodif); 

			if($Modif)//On vérifie que le nom ou prénom existe 
			{
			
			while($Modif) 
			{
			
				echo "<TR>"; 
				echo "<TD> $Modif[NOM] </TD>"; 
				echo "<TD> $Modif[PRENOM] </TD>"; 
	?> 
		<form name="frm_recherche" action="" method="post"> 

		<tr> 
		<td>Telephone portable :</td> 
		<td><input type="text" name="telport" value=<? 
		if (isset($_POST['telport'])) echo $_POST['telport']; 
			$REQUETE = "SELECT TEL_POR FROM `personnel`WHERE NOM='".$_POST['txtnomRech']."'"; 
			$exec = mysql_query ($REQUETE); 
			$info_de_la_requete = mysql_fetch_array($exec); 
			echo $info_de_la_requete['TEL_POR'] 
	?>></td> 
	</tr> 
	<tr> 
		<td>Telephone fixe :</td> 
		<td><input type="text" name="telfixe" value=<? 
		$REQUETE = "SELECT TEL_FIXE FROM `personnel`WHERE NOM='".$_POST['txtnomRech']."'"; 
		$exec = mysql_query ($REQUETE); 
		$info_de_la_requete = mysql_fetch_array($exec); 
		echo $info_de_la_requete['TEL_FIXE'] 
	?>></td> 
	</tr> 

	<? 
		echo "<TD><input type='radio' name ='btn_Modif' value='".$Modif['NOM']."'></TD>"; 
		echo "</TR>"; 
		$Modif = mysql_fetch_array($Resultatmodif); 
			} 
	
	?> 
	<tr> 
	
		<td colspan="3"><input type='submit' name="submit_modif" value='Modifier'></td> 
	</tr> 

</form>

<? 
} 
else//sinon on affiche que le nom ou prénom n'éxiste pas 
{ 
echo "<br><br><b>Le nom et prénom sont introuvable<b><br>"; 
echo "<a href='Modifpersindex.php'>retour</a>"; 
} 
} 
else//sinon on affiche que le nom et prénom doit être saisie 
{ 
echo "<br><b>Veuillez saisir un nom et prénom<b><br>"; 
echo "<a href='Modifpersindex.php'>retour</a>"; 
} 
} 
else 
{ 
?> 

<form name="frm_recherche" action="" method="post"> 

<tr> 
<td>Nom :</td> 
<td><input type="text" name="txtnomRech" ></td> 
</tr> 

<tr> 
<td>Prénom :</td> 
<td><input type="text" name="txtprenomRech" ></td> 
</tr> 
<tr> 
<td colspan="2" align="center"><input type="hidden" name="Valid" value="1"><input type="submit" value="Rechercher" name="submit_recherche"></td> 
</tr>
</form> 
<? 
} 
?> 
</table> 
</fieldset> 
0
Dracwolf Messages postés 34 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 10 janvier 2014 14
7 juin 2007 à 11:31
C'est bon je crois que j'ai trouver pourquoi ça plante.

En fait tu peut mettre un formulaire dans un autre formulaire, le serveur comprend pas cette manip. donc faut que tu trouve un moyen de séparer tout tes formulaires.
en gros faut plus ça :
<form action="" name= "">
........
<form action="" name= "">
........
</form>
</form>
mais ça :
<form action="" name= "">
.........
</form>
<form action="" name= "">
.........
</form>

Après ça, tout devrai fonctionner.
0
<?
if (isset($_POST['submit_modif']) && $_POST['submit_modif']!="") 
{  
require ("..\connect.php");
$requete = mysql_query ("UPDATE personnel SET TEL_POR='".$_POST['telport']."', TEL_FIXE='".$_POST['telfixe']."'
						WHERE NOM LIKE '".$_POST['txtnomRech']."%'
						AND PRENOM LIKE '".$_POST['txtprenomRech']."%'");
}
?>	
<fieldset style="width: 600px"> 
<legend>Modifier une personne</legend> 
<table> 
<? echo "<a href='Modifpersindex.php'>retour</a>"; 
if(isset($_POST["Valid"]))//vérifie si on a cliquer sur rechercher 
{ 
?> 
<? 
	if ($_POST['txtnomRech'] != "" || $_POST['txtprenomRech'] != "")//vérifie si les zones de texte nom et prénom ne son pas vide 
	{ 
	?> 
	
<form method="post" action="" name="TableauRech"> 
<?  
	require ("..\connect.php");
	$reqmodif = "SELECT * FROM personnel 
	WHERE NOM LIKE '".$_POST['txtnomRech']."%' 
	AND PRENOM LIKE '".$_POST['txtprenomRech']."%' "; 
	$Resultatmodif = mysql_query($reqmodif); 
	$Modif = mysql_fetch_array($Resultatmodif);
		if($Modif)//On vérifie que le nom ou prénom existe 
		{
		while($Modif) 
		{
			echo "<TR>"; 
			echo "<TD> $Modif[NOM] </TD>"; 
			echo "<TD> $Modif[PRENOM] </TD>"; 
?> 
</form>
<form name="frm_recherche" action="" method="post"> 

		<tr> 
		<td>Telephone portable :</td> 
		<td><input type="text" name="telport" value=<? 
		if (isset($_POST['telport'])) echo $_POST['telport']; 
			$REQUETE = "SELECT TEL_POR FROM `personnel`WHERE NOM='".$_POST['txtnomRech']."'"; 
			$exec = mysql_query ($REQUETE); 
			$info_de_la_requete = mysql_fetch_array($exec); 
			echo $info_de_la_requete['TEL_POR'] 
	?>></td> 
	</tr> 
	<tr> 
		<td>Telephone fixe :</td> 
		<td><input type="text" name="telfixe" value=<? 
		$REQUETE = "SELECT TEL_FIXE FROM `personnel`WHERE NOM='".$_POST['txtnomRech']."'"; 
		$exec = mysql_query ($REQUETE); 
		$info_de_la_requete = mysql_fetch_array($exec); 
		echo $info_de_la_requete['TEL_FIXE'] 
	?>></td> 
	</tr> 

	<? 
		echo "<TD><input type='radio' name ='btn_Modif' value='".$Modif['NOM']."'></TD>"; 
		echo "</TR>"; 
		$Modif = mysql_fetch_array($Resultatmodif); 
			} 
	
	?> 
	<tr> 

		<td colspan="3"><input type='submit' name="submit_modif" value='Modifier'></td> 
	</tr> 
</form>
<? 
} 
else//sinon on affiche que le nom ou prénom n'éxiste pas 
{ 
echo "<br><br><b>Le nom et prénom sont introuvable<b><br>"; 
echo "<a href='Modifpersindex.php'>retour</a>"; 
} 
} 
else//sinon on affiche que le nom et prénom doit être saisie 
{ 
echo "<br><b>Veuillez saisir un nom et prénom<b><br>"; 
echo "<a href='Modifpersindex.php'>retour</a>"; 
} 
} 
else 
{ 
?> 

<form name="frm_recherche" action="" method="post"> 

<tr> 
<td>Nom :</td> 
<td><input type="text" name="txtnomRech" ></td> 
</tr> 

<tr> 
<td>Prénom :</td> 
<td><input type="text" name="txtprenomRech" ></td> 
</tr> 
<tr> 
<td colspan="2" align="center"><input type="hidden" name="Valid" value="1"><input type="submit" value="Rechercher" name="submit_recherche"></td> 
</tr>
</form> 
<? 
} 
?> 
</table> 
</fieldset> 


toujours les memes erreur...
0
Dracwolf Messages postés 34 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 10 janvier 2014 14
8 juin 2007 à 09:16
ben en fait c'est pas beaucoup mieux puisque tu ferme plusieur fois un formulaire (a cause du while) puis tu ouvre un autre formulaire 40 fois (toujours a cause du while) mais tu n'en ferme qu'un !

En général, il faut mettre 1 seul formulaire dans ta page qui contient toute tes variables et ton code
0
Sinon je peux faire deux page PHP:
<fieldset style="width: 600px"> 
<legend>Modifier une personne</legend> 
<table> 
<? echo "<a href='Modifpersindex.php'>retour</a>"; 
if(isset($_POST["Valid"]))//vérifie si on a cliquer sur rechercher 
{ 
?> 
<? 
	if ($_POST['txtnomRech'] != "" || $_POST['txtprenomRech'] != "")//vérifie si les zones de texte nom et prénom ne son pas vide 
	{ 
	?> 
	
<form method="post" action="" name="TableauRech"> 
<?  
	require ("..\connect.php");
	$reqmodif = "SELECT * FROM personnel 
	WHERE NOM LIKE '".$_POST['txtnomRech']."%' 
	AND PRENOM LIKE '".$_POST['txtprenomRech']."%' "; 
	$Resultatmodif = mysql_query($reqmodif); 
	$Modif = mysql_fetch_array($Resultatmodif);
		if($Modif)//On vérifie que le nom ou prénom existe 
		{
		while($Modif) 
		{
			echo "<TR>"; 
			echo "<TD> $Modif[NOM] </TD>"; 
			echo "<TD> $Modif[PRENOM] </TD>"; 
		
?> 
</form>
<form name="frm_recherche" action="Modifpers2.php" method="POST">

		<tr> 
		<td>Telephone portable :</td> 
		<td><input type="text" name="telport" value=<? 
		if (isset($_POST['telport'])) echo $_POST['telport']; 
			$REQUETE = "SELECT TEL_POR FROM `personnel`WHERE NOM='".$_POST['txtnomRech']."'"; 
			$exec = mysql_query ($REQUETE); 
			$info_de_la_requete = mysql_fetch_array($exec); 
			echo $info_de_la_requete['TEL_POR'] 
	?>></td> 
	</tr> 
	<tr> 
		<td>Telephone fixe :</td> 
		<td><input type="text" name="telfixe" value=<? 
		$REQUETE = "SELECT TEL_FIXE FROM `personnel`WHERE NOM='".$_POST['txtnomRech']."'"; 
		$exec = mysql_query ($REQUETE); 
		$info_de_la_requete = mysql_fetch_array($exec); 
		echo $info_de_la_requete['TEL_FIXE'] 
	?>></td> 
	</tr> 

	<? 
		echo "<TD><input type='radio' name ='btn_Modif' value='".$Modif['NOM']."'></TD>"; 
		echo "</TR>"; 
		$Modif = mysql_fetch_array($Resultatmodif); 
			} 
	


	?> 
	<tr> 

		<td colspan="3"><input type='submit' name="submit_modif" value='Modifier'></td> 
	</tr> 
</form>
<? 
} 
else//sinon on affiche que le nom ou prénom n'éxiste pas 
{ 
echo "<br><br><b>Le nom et prénom sont introuvable<b><br>"; 
echo "<a href='Modifpersindex.php'>retour</a>"; 
} 
} 
else//sinon on affiche que le nom et prénom doit être saisie 
{ 
echo "<br><b>Veuillez saisir un nom et prénom<b><br>"; 
echo "<a href='Modifpersindex.php'>retour</a>"; 
} 
} 
else 
{ 
?> 
<form name="frm_recherche" action="" method="POST"> 

<tr> 
<td>Nom :</td> 
<td><input type="text" name="txtnomRech" ></td> 
</tr> 

<tr> 
<td>Prénom :</td> 
<td><input type="text" name="txtprenomRech" ></td> 
</tr> 
<tr> 
<td colspan="2" align="center"><input type="hidden" name="Valid" value="1"><input type="submit" value="Rechercher" name="submit_recherche"></td> 
</tr>
</form> 
<? 
} 
?> 
</table> 
</fieldset> 


et une autre

<fieldset style="width: 600px"> 
<legend>Modifier une personne</legend> 
<?
$formMail = $_POST['txtprenomrech'];
$formMail2 = $_POST['txtprenomRech'];

 
 if (isset($_POST['submit_modif']) && $_POST['submit_modif']!="")
 {
require ("..\connect.php");
$requete = mysql_query ("UPDATE personnel SET TEL_POR='".$_POST['telport']."', TEL_FIXE='".$_POST['telfixe']."'
						WHERE NOM LIKE '".$_POST['txtnomRech']."%'
						AND PRENOM LIKE '".$_POST['txtprenomRech']."%'");
}
?>	
</fieldset> 



Mais je n'arrive pas a recuperer les valeurs...:s
0
Dracwolf Messages postés 34 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 10 janvier 2014 14
8 juin 2007 à 10:03
while($Modif)
{
echo "<TR>";
echo "<TD> $Modif[NOM] </TD>";
echo "<TD> $Modif[PRENOM] </TD>";

?>
</form>
<form name="frm_recherche" action="Modifpers2.php" method="POST">

<tr>

a cause de ça ton problème reste le même . au pire tu peut deplacer la fermeture et l'ouverture avant ton while

</form>
<form name="frm_recherche" action="Modifpers2.php" method="POST">
while($Modif)
{
echo "<TR>";
echo "<TD> $Modif[NOM] </TD>";
echo "<TD> $Modif[PRENOM] </TD>";

?>

<tr>

et faire deux page c'est bien mais inutile
0
j'ai fait se que tu as mis mais toujours pareil...:s

il y a pas un moyen de recuperer la valeur de cete variable ds la meme page?
0
Dracwolf Messages postés 34 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 10 janvier 2014 14
8 juin 2007 à 15:13
j'ai bien une solution "bricolage" met ta variable dans une vaiable de session.

donc tu met session_start() au tous debut de ton code et ensuite tu met ta variable dans un truc du genre $_SESSION['un_nom_de_variable']

si avec ça t'y arrive pas je comprend pas
0
donc je met txtnomRech et txtprenomRech dans un SESSION...?
0
Juste un énorme merci pour la réponse,j'ai mis plus de 4h à chercher cette ***** réponse, trop de bonheur, ca marche!!!!!!
0