public static function save(Application_Model_O_Destination $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(); //echo "<pre>";var_dump($params);exit; // unset($params['controller']); // unset($params['action']); // unset($params['module']); $dest = new Application_Model_O_Destination(); $validate = new Yy_Validate_Value(); if ($validate->isValid($params['id'])) { $dest->setId($params['id']); } else { $dest->setCtime(date('Y-m-d H:i:s')); } if ($validate->isValid($params['city'])) { $dest->setCity($params['city']); } if ($validate->isValid($params['type'])) { $dest->setType($params['type']); } if ($validate->isValid($params['longitude'])) { $dest->setLongitude($params['longitude']); } if ($validate->isValid($params['latitude'])) { $dest->setLatitude($params['latitude']); } if ($validate->isValid($params['sort'])) { $dest->setSort($params['sort']); } if ($validate->isValid($params['status'])) { $dest->setStatus($params['status']); } try { $dest->save(); $id = $dest->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_Destination::updateImage($id, $img); } $url = '/destination/view?id=' . $id . '&from=add'; $this->redirect($url); } catch (Zend_Db_Exception $e) { $this->redirect('/error?message=' . $e->getMessage()); } }