// Process $values = $form->getValues(); $values['user_id'] = $viewer->getIdentity(); $values['parent_type'] = $parent_type; $values['parent_id'] = $parent_id; $values['host'] = $group->getTitle(); } $db = Engine_Api::_()->getDbtable('events', 'event')->getAdapter(); $db->beginTransaction(); try { // Create event $table = $this->_helper->api()->getDbtable('events', 'event'); $event = $table->createRow(); $lastid = $this->table->getAdapter()->lastInsertId(); $event->setFromArray($values); $event->save(); 'forum_event_id' => '', 'topic_id' => '7', 'event_id' => ''.$lastid.'' ); $db->insert('engine4_forum_event_topics',$data);
Sprawa wydaję się prosta bo wystarczy użyć funkcji lastInsertId();
Jednak nie działa - zmienna lastid nie przekazuje ostatnio dodanego rekordu do bazy, bo źle to wstawiam i nie wiem gdzie to powinno być.
Mam taki błąd:
Call to a member function getAdapter() on a non-object
Jak wstawić i "wychwycić" ostatnio dodane ID eventu z bazy poprawnie?