2015-01-01 46 views
0

我是Prestashop的新手。我正在做一個小模塊。在該模塊中,我想更新一個表格。但我的條件是這樣的,它會更新這些行的ID是不是3所以對我來說我的表是這樣的Prestashop數據庫更新與db類

id  name  active 
1  test1  0 
2  test4  0 
3  test5  1 
4  test9  0 
5  test12  0 
6  test25  0 

所以按照DB classes我做了我這樣的查詢

$id = 3; 
Db::getInstance()->update('table', array('active'=>'1'), 'id != '.$id); 

也我試過

Db::getInstance()->update('table', array('active'=>'1'), 'id <> '.$id); 

但它沒有工作。那麼有人可以告訴我如何解決這個問題。 任何幫助和建議將非常可觀。

+0

你有沒有轉過DEV模式?什麼是錯誤? – gskema

+0

我沒有收到任何錯誤 – NewUser

+0

是狀態列整數或varchar?因爲如果它的varchar,運算符可能是錯的 – gskema

回答

2

的溶液,如gskema狀態,是投ID爲int:

Db::getInstance()->update('table', array('active'=>'1'), 'id != '.(int)$id); 

的PrestaShop需要你通過適當類型的值針對各列。不過,對於「十進制」類型,如果值的格式正確,則可以傳入一個字符串。