2011-01-22 5 views
0

J'essaie de mettre à jour deux lignes dans ma base de données en utilisant une requête (qui va être exécutée à partir d'un script PHP) et il n'y a qu'une Condition (WHERE). Ce que j'ai essayé est:UPDATE deux lignes - MySQL

$sql = 'UPDATE ' . CANNED_MESSAGES . " 
       SET canned_message_content = '" . $db->sql_escape($content) . "', 
        canned_message_title = '" . $db->sql_escape($title) . "' 
       WHERE id = '" . intval($id) . "'" ; 
$db->sql_query($sql); 

Pouvez-vous me dire ce qui ne va pas avec ma requête? :)

+1

Pouvez-vous nous dire pourquoi vous pensez qu'il ya quelque chose de mal? –

+0

Pouvez-vous nous dire ce qui s'est mal passé lorsque vous avez essayé d'exécuter la requête? :-) –

+0

Il me semble que le 'id' est susceptible d'être unique à une ligne. Pourquoi pensez-vous que cela devrait mettre à jour deux? –

Répondre

1

Cela peut être dû à une différence de devis. S'il vous plaît utiliser ce

$sql = "UPDATE '" . CANNED_MESSAGES ."' 
       SET canned_message_content = '" . $db->sql_escape($content) . "', 
        canned_message_title = '" . $db->sql_escape($title) . "' 
       WHERE id = '" . intval($id) . "' " ; 
+0

Je suppose que cela a fonctionné! – Aborted

+0

Comment peut-on voter la réponse sans tenir compte des petites choses dans la programmation. Le peu de chose dans la programmation peut créer le problème comme il l'a fait. – Gaurav

1

Je doute fortement que deux lignes puissent avoir la même colonne id. Est-ce qu'ils? Si non, comment pourriez-vous mettre à jour 2 lignes en spécifiant une condition sur une colonne avec une telle contrainte?

+0

Je ne comprends pas ce que vous voulez dire, pouvez-vous s'il vous plaît expliquer? :) – Aborted

+0

Post quelques exemples de données des lignes que vous essayez de mettre à jour – diagonalbatman

+0

Bon, ici, je vais essayer d'expliquer: cette requête fait en fait partie d'une fonction, et l'ID est un champ caché en HTML, de sorte que chaque CANNED MESSAGE a son propre ID, et dans la fonction, pour ID, j'ai simplement passé $ _POST ['id']. Je ne peux pas le clarifier assez bien, je comprends à peine comment je l'ai fait fonctionner lol: P – Aborted