2011-03-29 4 views
1

Quel est le problème avec cette instruction? Une erreur se produit, il ne lit pas la deuxième ligneInstruction de mise à jour SQL Zend-framework

(($var = array('tab.order' => 'tab.order+1');)) 

$db->update('tab', $form->getValues(), array('id =?' => $id)); 
         $var = array('tab.order' => 'tab.order+1'); 
         $var2 = array('tab.order >= ' . $form->getValue('order')); 
         $db->update('tab', $var, $var2); 
+0

Quelle erreur se produit? –

+0

pas d'erreur, il ne fait tout simplement pas ce que je voulais faire qui met à jour toutes les lignes dans l'attribut de commande – haider

+0

Que voulez-vous dire par «il ne prépare pas la deuxième ligne»? '$ var' n'existe pas, n'a pas la valeur que vous attendez, etc? –

Répondre

1

Votre problème se produit probablement lorsque Zend_Db t-il son échappement des valeurs dans $var, et la valeur devient

`tab.order+1` 

Vous devrez faire

$var = array('tab.order' => new Zend_Db_Expr('tab.order + 1')); 

pour contourner ce problème.

+0

merci ça a bien fonctionné – haider

Questions connexes