public static function save(Application_Model_O_Banner $obj, $extra = '') { if (!$obj->getModifiedFields()) { return $obj; } foreach ($obj->getModifiedFields() as $key => $value) { $field = self::$fields[strtolower($key)]; if ($field) { $data[$field] = $value; } } if (!$obj->getId()) { $obj->setId(self::getDbTable()->insert($data, $extra)); $obj->setNew(false); } else { self::getDbTable()->update($data, array('id = ?' => $obj->getId())); } return $obj; }
public function asyncajaxAction() { $this->getResponse()->setHeader('Content-Type', 'application/json'); $this->_helper->viewRenderer->setNoRender(true); $this->_helper->layout()->disableLayout(); $params = $this->_getAllParams(); $banner = new Application_Model_O_Banner(); $validate = new Yy_Validate_Value(); if ($validate->isValid($params['id'])) { $banner->setId($params['id']); } else { $banner->setCtime(date('Y-m-d H:i:s')); } if ($validate->isValid($params['title'])) { $banner->setTitle($params['title']); } if ($validate->isValid($params['content'])) { $banner->setContent($params['content']); } if ($validate->isValid($params['link'])) { $banner->setLink($params['link']); } if ($validate->isValid($params['sort'])) { $banner->setSort($params['sort']); } if ($validate->isValid($params['status'])) { $banner->setStatus($params['status']); } try { $banner->save(); $id = $banner->getId(); //保存广告图片 $adapter = new Zend_File_Transfer_Adapter_Http(); $wrdir = Yy_Utils::getWriteDir(); $adapter->setDestination($wrdir); if (!$adapter->receive()) { $messages = $adapter->getMessages(); //echo implode("\n", $messages); } $filename = $adapter->getFileName(); if (is_string($filename)) { $handle = fopen($filename, 'rb'); $img = addslashes(fread($handle, filesize($filename))); fclose($handle); Application_Model_M_Banner::updateImage($id, $img); } $url = '/banner/view?id=' . $id . '&from=add'; $this->redirect($url); } catch (Zend_Db_Exception $e) { //$this->redirect('/error'); $this->redirect('/error?message=' . $e->getMessage()); } }