question udpate set

Invité
Invité n'ayant pas de compte PHPfrance

11 mars 2007, 16:25

Bonjour, à tous,

Je voudrais construire une requete qui met à jour une table à partir d'un formulaire. Ma table contient 70 champs.

est-il possible de faire une mise à jour globlale des données de la table sans devoir pointer chaque champ avec la requete UPDATE SET WHERE ?

Merci pour vos réponses.

Invité
Invité n'ayant pas de compte PHPfrance

11 mars 2007, 17:24

j'ai trouvé suffisamment court en faisant ceci:
foreach ($_POST as $key => $val) {
	
//requete mise à jour produit
$query = "UPDATE produits SET " . $key . " = '" . mysql_real_escape_string ($val). "' WHERE idLivre = " . $_POST['idLivre'];

//exécution de la requête
$result = mysql_query($query) or die (mysql_error() .mysql_errno());
}	
ça marche bien, toutes les valeurs sont mises à jour. Un seul problème:
Ca ne marche pas pour idLivre qui est l'id de mon produit. J'aimerais que l'utilisateur puisse mettre à jour l'idLivre. savez vous ce qui ne va pas?

Précision: mon champ id livre est de type varchar.

ViPHP
ViPHP | 2144 Messages

11 mars 2007, 18:09

Il faudrait que tu nous en dise plus, notamment sur la structure de la table.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

11 mars 2007, 19:28

Ca ne marche pas pour idLivre qui est l'id de mon produit. J'aimerais que l'utilisateur puisse mettre à jour l'idLivre.
Un peu de lecture :)

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute