[MySQL] Requete UPDATE complexe ?

Résolu
xxkirastarothxx Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Bonjour à tous,

Je voudrais savoir s'il y a un moyen de faire une requete UPDATE complexe, de ce genre:

mysql_query("UPDATE $table (SET value="$value WHERE name="$name") AND (SET value="$value2" WHERE name="$name2")")

Je sais que la syntaxe de ma requête n'est pas bonne, mais je cherche quelques chose de similaire, ce qui m'eviterais d'avoir a écrire 30 requête d'affiliée :p

Merci d'avance :)
A voir également:

10 réponses

alexdelareunion Messages postés 545 Date d'inscription   Statut Membre Dernière intervention   142
 
Impossible, on ne fait pas de AND avec un Update,
une seule commande par Update c'est normal que plus ne marche pas.
2
Utilisateur anonyme
 
Salut,
mysql_query("UPDATE TA_TABLE (SET value='" . $value ."' WHERE name='" . $name . "') AND (SET value='" . $value2 . "' WHERE name='" . $name2 . "')");
0
xxkirastarothxx Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   40
 
Merci :)
j'essaye ça de suite :)
0
xxkirastarothxx Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   40
 
voila j'ai mis cette requete:

mysql_query("UPDATE $table (SET value='" . $name ."' WHERE name='name') AND (SET value='" . $slogan . "' WHERE name='slogan')");

mais il ne se passe rien, quelqu'un pourrait me dire pourquoi ? :)
0

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

Posez votre question
Utilisateur anonyme
 
Re,
$table c'est une variable contenant le nom de ta table?
0
xxkirastarothxx Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   40
 
ouais j'oubliais ^^

$table = SQL_PRE.'config' ( j'ai un define("SQL_PRE", "g33k_"); )
=> quand je fais un echo j'ai bien " g33k_config "

c'est la table qui gère toute la config du site (comme un CMS)

enfait, ma table est faite de 3 champs:

id
name (name, slogan, language, statut ....)
value (Mon Site, Un Site Trop bien, french, on ...) etc...

j'ai fais un page de config ou on peut tout géré, mais j'aimerai faire une seule requête plutot que 17 d'affilée (nombre d'entrée)
Au pire c'est pas spécialement grave, mais ça allègerait bien je suppose :)
0
xxkirastarothxx Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   40
 
donc obligé de faire mes 17 requete d'affilées ?
erf :P

Bon bah c'est partit alors... merci :)
0
Utilisateur anonyme
 
Ok, ben essaie ça :
mysql_query("UPDATE " . $table . " (SET value='" . $name ."' WHERE name='name');
mysql_query("UPDATE " . $table . " (SET value='" . $slogan . "' WHERE name='slogan')");
0
xxkirastarothxx Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   40
 
je voulais seulement trouver un moyen de reduire, sinon la commande je la connais :)
je dirais même, plus simple:
mysql_query("UPDATE $table SET value='$name' WHERE name='name'");

pourquoi s'embêter avec la concaténation quand il n'y en a pas besoin ^^
Bon en tout cas ça marche :)

[résolu] même si j'ai pas vraiment trouver ce que je cherchais, j'ai eu ma reponse :p
Merci :)
0
Utilisateur anonyme
 
Ah ok, j'avais pas du tout saisi ta question de départ, mais après relecture, je comprends ^^. Oui, effectivement tu n'auras pas d'autre moyen de faire ce que tu veux. En fait, je croyais que tu disais que ça ne marchait pas en faisant sans concaténation, c'est pourquoi je t'avais proposé la méthode avec concaténation, ne réfléchissant pas du tout à la requête en elle-même :)
0