MYSLQ UPDATE,update toute une colonne.
Wons
-
Wons -
Wons -
Bonjour,
Je suis en cours de développement, d'un extranet pour mon projet de stage.
Et lors d'une requete SQL ou je suis sensé après un formulaire ( voir ci-dessous), mettre à jour une ligne d'une table. Tout marche sauf pour la colonne "Materiel" qui update toute la colonne du coup c'est moins cool.
Voici mon code
Merci de vos reponses.
Je suis en cours de développement, d'un extranet pour mon projet de stage.
Et lors d'une requete SQL ou je suis sensé après un formulaire ( voir ci-dessous), mettre à jour une ligne d'une table. Tout marche sauf pour la colonne "Materiel" qui update toute la colonne du coup c'est moins cool.
Voici mon code
<div id="modif">
<form method="post">
<fieldset class="style" ><p>
<label for ="nom">Nom</label> <input type="text" readonly="readonly" name="nom"id="nom" value="<?php echo $nom; ?>"><br />
<label for="ville">Ville</label><input type="text" readonly="readonly" name="ville" id="ville" value="<?php echo $ville; ?>"><br />
<label for="matos">Materiel</label><select name="materiel">
<?php $req = $bdd -> query('SELECT nom_cat FROM categorie
WHERE nom_cat != "'.$nom_cat.'"') ;
$req_bis = $bdd ->query('SELECT COUNT(id_cat) AS nb FROM categorie');
$bis = $req_bis ->fetch();
$max = $bis['nb'];
echo '<option selected="selected" value"'.$nom_cat.'">'.$nom_cat.'</option>';
while($donnees = $req->fetch())
{ echo '<option value="'.$donnees['nom_cat'].'">'.$donnees['nom_cat'].'</option>';
}
?></select>
<label for="tel"> Telephone</label><input type="text" name="tell" id="tel" value="<?php echo $tel; ?>"><br />
<label for="id_tv">Id teamviewer</label><input type="text" name="id_tv" id="id_tv" value="<?php echo $tv ; ?>"><br />
<label for="mdp">Mot de passe</label><input type="text" name="mdp" id="mdp" value="<?php echo $mdp; ?>"><br />
<label for="conf">Confirmation</label><input type="text" name="conf" id="conf" value="<?php echo $mdp; ?>"><br />
<input id="submit" type="submit" value="Modifier">
</p>
</fieldset>
</form>
<?php
if(!empty($_POST['nom']))
{
if(!empty($_POST['id_tv']))
{
if (isset($_POST['mdp']))
{
$passe =mysql_real_escape_string(htmlspecialchars($_POST['mdp']));
$passe2 = mysql_real_escape_string(htmlspecialchars($_POST['conf']));
if($passe==$passe2)
{
$id_mat = chgnom( mysql_real_escape_string(htmlspecialchars($nom_cat)));
$nom_m = mysql_real_escape_string(htmlspecialchars($_POST['materiel']));
$nv_tv = mysql_real_escape_string(htmlspecialchars($_POST['id_tv']));
$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
$req=$bdd->exec('UPDATE pc,categorie
SET pc.id_tv ="'.$nv_tv.'", pc.mdp_tv="'.$passe.'", categorie.nom_cat="'.$nom_m.'"
WHERE
pc.id_client ="'.$id.'"
AND
pc.id_cat = "'.$id_mat.'"
');
header('Location:teamviewer.php');
}
else
{
?><script>alert('Mots de passe differents');</script><?php
}
}
elseif($_POST['mdp']=NULL)
{
?><script>alert('Il faut un mot de passe');</script><?php
}
}
}
?>
</div>
Merci de vos reponses.
1 réponse
-
Bonjour,
mettre à jour une ligne d'une table
non dans ton update tu mets à jour 2 tables : PC et categorie
'UPDATE pc,categorie SET pc.id_tv ="'.$nv_tv.'", pc.mdp_tv="'.$passe.'", categorie.nom_cat="'.$nom_m.'" WHERE pc.id_client ="'.$id.'" AND pc.id_cat = "'.$id_mat.'"
Un étranger, c'est un ami qu'on n'a pas encore rencontré.