2010-08-19 3 views
1

Есть ли что-то подобное для сохранения задачи обновления?Обновление базы данных Zend Framework

Если я хочу сохранить новую запись, я просто ее сделаю:

$ data_from_post = $ _POST;
$ newUser = $ usersDb-> fetchNew();
$ newUser-> setFromArray ($ data_from_post);
$ newUser-> save();

Есть что-то для задачи обновления?

Спасибо и наилучшим образом.

ответ

0
$where = $usersDb->getAdapter()->quoteInto('id = ?', data_from_post['id']); 
$usersDb->update($data_from_post, $where); 

Предполагая, что у вас есть поле id в вашем массиве сообщений. В основном обновление принимает два параметра. Массив обновления и предложение where.

см Обновление строк в таблице in here

+0

Спасибо за вашу помощь, я основал здесь два отличных способа сделать то, что хочу. С наилучшими пожеланиями. –

0

Вы хотите использовать $ newUser-> сохранить(), но ваш $ NEWUSER должен быть размножают в размере $ usersDb-> найти ($ _ POST [ 'ID']) ; вместо fetchNew(). И, конечно же, вам нужно будет обновить $ newUser новыми значениями из $ _POST после того, как вы создадите экземпляр. Метод save() проверяет измененные поля и маршруты для обновления() вместо insert();

+0

Ничего себе, отличный, я постараюсь это сделать! Могу ли я сохранить объект? Благодарю. –

+0

Конечно, это то, что вы делаете в одном и том же $ newUser-> save() ;. – allnightgrocery

Смежные вопросы