Modification table avec php, html, sql
Résolu
hanagi
Messages postés
141
Statut
Membre
-
hanagi Messages postés 141 Statut Membre -
hanagi Messages postés 141 Statut Membre -
Bonjour,
j'utilise un formulaire (dans une page web) pour remplir une table dans ma base de données, puis toutes les données de cette table s'affichent dans une page web, pour le remplissage cela marche bien, mais lorsque j'essaie de modifier un enregistrement e la table, le code que j'ai utilisé ne marche pas, et il n y a aucune modification. Voici le code que j'ai utilisé:
if(!empty($_POST['tt'])) /tt est le nom de la zone de texte dont j'insere le matricule du fonctionnaire à modifier
{
$vv=$_POST['tt'];
$vv1=$_POST['tt1']; / tt1 zone de matricule
$vv2=$_POST['tt2']; / tt2 zone de nom
$req = mysql_query('SELECT * FROM table ORDER BY mat') or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
while($data = mysql_fetch_array($req)){
$sql = "UPDATE table SET mat='$vv1', nom='$vv2' WHERE mat='vv' ";
mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error()); }
Est-ce que vous pouvez m'aider avec ça?
Merci d'avance
j'utilise un formulaire (dans une page web) pour remplir une table dans ma base de données, puis toutes les données de cette table s'affichent dans une page web, pour le remplissage cela marche bien, mais lorsque j'essaie de modifier un enregistrement e la table, le code que j'ai utilisé ne marche pas, et il n y a aucune modification. Voici le code que j'ai utilisé:
if(!empty($_POST['tt'])) /tt est le nom de la zone de texte dont j'insere le matricule du fonctionnaire à modifier
{
$vv=$_POST['tt'];
$vv1=$_POST['tt1']; / tt1 zone de matricule
$vv2=$_POST['tt2']; / tt2 zone de nom
$req = mysql_query('SELECT * FROM table ORDER BY mat') or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
while($data = mysql_fetch_array($req)){
$sql = "UPDATE table SET mat='$vv1', nom='$vv2' WHERE mat='vv' ";
mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error()); }
Est-ce que vous pouvez m'aider avec ça?
Merci d'avance
4 réponses
-
Pour ta requête se serais plutôt :
$sql = "UPDATE table SET mat='".$vv1."', nom='".$vv2."
' WHERE mat='vv' ";
avec des doubles cotes (guillemets). -
Vous voulez dire que je dois mettre : mat="'.$vv1.'", nom="'.$vv2.'" ?
Et pour le "mat" de WHERE je ne le modifie pas? Il reste mat='$vv' ?'
Merci pour votre aide -
faut le faire pour les 3. désolé, je suis allé un peu vite en besogne. ca donne ça (sans les espaces):
' " . $vv . " ' -
merci beaucoup Ozimandias, ça marche trés bien
merci une autre fois :-)