2012-07-02 101 views
1

我已經得到了這個查詢,從我發現的例子在這裏和在文檔中這應該工作,但腳本說沒有..需要數組不是字符串。我需要做些什麼類似於Zend Framework的SQL查詢更新不起作用

$db = $this->db = Zend_Registry::getinstance()->dbAdapter; 
$db->select()->from('offer_term')->where('term_id = '.$entry[$i]); 
$db->update('status = 0'); 

與上述我得到一個錯誤,關於它不採取一個字符串它需要是一個數組。

與下面我的整個腳本中斷。所以,我對Zend有點新鮮,任何人都在關心我做錯了什麼?

$db = $this->db = Zend_Registry::getinstance()->dbAdapter; 
$db->select()->from('offer_term')->where('term_id = ?',array($entry[$i])); 
$db->update('status = ?', array('0')); 
+0

什麼是完整的錯誤? –

回答

3

請看看的update()here Zend框架文檔。

方法的簽名是:

$db->update($table, $data, $where); 

這意味着你將作爲行(S)從該表必須讓適配器知道你正在更新其表,以及。

你或許應該重新編寫代碼:

$db->update(
    'offer_term', 
    array('status' => 0), 
    array('term_id = ?' => $entry[$i]) 
); 

這將轉化:

UPDATE offer_term 
SET status = 0 
WHERE term_id = <myEntry>