2011-12-06 11 views
0

テーブルのエントリを更新できません。私が使用していたコードは以下の通りです:まずZend dbテーブル - save()保存しない

class Model_Notification extends Zend_Db_Table_Abstract 
{ 
    protected $_name = "notifications"; 
    public function encrypt($id,$key) 
    { 
     $select = $this->select(); 
     $select->where('id = ?', $id); 
     $row = $this->fetchRow($select); 

     if($row) 
     { 
      $row->key = $key; 
      $row->save(); 
      return true; 
     } 
     return false; 

    } 
} 

、私はそれが列名「キー」かもしれないと思ったので、私は「パスキー」が、ノー成功にそれを変更しました。私は真実を得る毎回私に戻ってきた!

テーブルに追加/削除することはできますが、なぜこのアップデートsave()が機能しないのか理解できません。

乾杯、

答えて

1

より最適化された方法

$table = new Table(); 
$data = array(
    "field1" => "value1", 
    "field2" => "value2" 
); 
$where = $table->getAdapter()->quoteInto("id = ?",$id); 


$table->update($data, $where); 
+0

とどのようにあなたは、更新のためのテーブル名を取得するのですか? –

2

はこれを試してみてください:

 
$data = array(
    "field1" => "value1", 
    "field2" => "value2" 
); 
$where = "id = " . $id; 

$table = new Table(); 
$table->update($data, $where); 
関連する問題