2011-07-03 1 views
2

행을 업데이트하는 데 문제가 있습니다. 나는 배열 또한 전달 시도했지만 아무 반응이 없습니다 PHP Catchable fatal error: Argument 2 passed to Zend_Db_Adapter_Abstract::update() must be an array, string given, called in /Applications/MAMP/htdocs/app/library/Session/Handler.php on line 51 and defined in /Applications/MAMP/libraries/zend-framework/ZendFramework-1.11.3-minimal/library/Zend/Db/Adapter/Abstract.php on line 587Zend_Db_Adapter_Abstract :: update()는 배열이어야합니다.

:

return $this->update(
      array('data' => $data), 
      $this->getAdapter()->quoteInto("id = ?", $id) 
     ) ? true : false; 

내가 점점 계속 예외는 다음과 같습니다

내 클래스는

Zend_Db_Table_Abstract

을 확장하고 여기에 내 코드입니다. 어떤 생각?!

답변

0

당신의 두 번째 인수에 배열을 사용할 수 있습니다 -> 업데이트()

예 :

$this->update(
    array('data' => $data), 
    array("id = ?" => $id), 
) ? true : false; 

하지만 문자열이 있어야합니다 확인

/** 
* Convert an array, string, or Zend_Db_Expr object 
* into a string to put in a WHERE clause. 
* 
* @param mixed $where 
* @return string 
*/ 
protected function _whereExpr($where) 
{ 
    if (empty($where)) { 
     return $where; 
    } 
    **if (!is_array($where)) {** 
     $where = array($where); 
    } 
렸기 때문에