[PHP] PB de variable

MaO -  
 Utilisateur anonyme -
BONJOUR A TOUS,

Mon probleme est le suivant:
Mon code modifie les num de telephone portable et fixe du personnel.MAis il doit modifier ces numero que de la personne selectionné alors que là il change le numero de toutes les personnes.

<?
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> 
<? 
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" value=""></td> 
</tr> 

<tr> 
<td>Prénom :</td> 
<td><input type="text" name="txtprenomRech" value=""></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> 




Notice: Undefined index: txtnomRech in d:\www\php\inventaire\admin\Modifpers.php on line 6

Notice: Undefined index: txtprenomRech in d:\www\php\inventaire\admin\Modifpers.php on line 7


merci...

29 réponses

Utilisateur anonyme
 
parceque il faut que tu mette une condition where a ton update...
where id = quelque chose ou un autre champs mais il faut que tu donne une condition en fait sinon il change toutes les valeurs ^^
0
MaO
 
euh dsl pour la sinthaxe mais le WHERE est present tout a droite dasn la requete...
0
Utilisateur anonyme
 
a pardon excuse moi j'ai du passé un peu vite dessu ^^'

essai de mettre = a la place de like :)
0
MaO
 
non si je met un "=" il ne change put les données et met les meme erreurs
0
gryzzly Messages postés 4608 Date d'inscription   Statut Contributeur Dernière intervention   1 335
 
== au lieu de = ?
0

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

Posez votre question
MaO
 
il modifie les donnée de tout le monde et affiche les memes erreurs... avec le "=="
0
Utilisateur anonyme
 
nn == c'est pour des tests dans des structure conditionnel genre if

et ben je continu de regarder ton code....
0
Utilisateur anonyme
 
ah quand tu test avec = (je suis convincu que c'est sa ki faut faire et pas like lol)

enleve tes % parce que ça c'estt specifique a like
0
MaO
 
non je te jure que ca ne marche pas .

mes erreurs:

Resource id #4
Notice: Undefined index: txtnomRech in d:\www\php\inventaire\admin\Modifpers.php on line 6

Notice: Undefined index: txtprenomRech in d:\www\php\inventaire\admin\Modifpers.php on line 7


se n'est pas pcq mes variables sont déclaré plus bas?
0
Utilisateur anonyme
 
alors fais un echo de $requete et copie colle ta requete dans phpMyAdmin pour voir ce quil te dit et dit moi ske ça marque!
0
Utilisateur anonyme
 
verdict?
0
MaO
 
alors la requete j'ai fait :

UPDATE personnel SET TEL_POR='1', TEL_FIXE='1'
WHERE NOM LIKE 'a'
AND PRENOM LIKE '1'

et aucune erreur
0
MaO
 
help
0
Utilisateur anonyme
 
et php my admin il te renvoi les element ke tu veu dans la table? c'est bizar qu'il te mete pas d'erreur...
0
MaO
 
Les erreurs c'est pas a cause des variable qui sont definit lus bas dans le code?
0
Utilisateur anonyme
 
ben d'après moi ça devrait etre bon....je seiche :s

il est en ligne quelque par que je puisse tester?
0
MaO
 
non c'est sur intranet...
0
Utilisateur anonyme
 
Ben je vois pas trop la comme ça je vais lacher le truc une heure et je reregarderai pour voir histoire de reflechir un peu mais la je bloque :)
0
MaO
 
j'ai remplacer les nom de variable par un nom et prenom de personnel et ca marche nikel...

l'erreur est donc bien là
0
Utilisateur anonyme
 
essai d'enlever value="" dans ton formulaire
il garde peut etre ça plutot que ce que tu as entré deds...
0
MaO
 
Non ca marche tout pariel avec les meme erreur...:s
0
Utilisateur anonyme
 
arf
0
Utilisateur anonyme
 
bon au début de ton code fais un echo $_POST['nom'] et $_POST['prenom'] pour voir ce qu'ils contiennent...
0