Zend db表 - save()不保存

时间:2011-12-06 10:51:27

标签: mysql zend-framework

我无法更新表格中的条目。我正在使用的代码如下:

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;

    }
}

起初,我认为它可能是列名“key”,因此我将其更改为“passkey”但没有成功。我每次都回归真实!

我仍然可以在表格中添加/删除,但我能理解为什么此更新save()不起作用!

干杯,

2 个答案:

答案 0 :(得分:2)

试试这个:

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

$table = new Table();
$table->update($data, $where);

答案 1 :(得分:1)

更优化的方式

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


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