/** * Receive the uploaded file * * @return boolean */ public function receive() { $fileinfo = $this->getFileInfo(); if (null === $this->_initialFilename) { $this->_initialFilename = $fileinfo[$this->getName()]['name']; } $dirName = md5(Centurion_Inflector::uniq($fileinfo[$this->getName()]['tmp_name'])); $filename = substr($dirName, 0, 2) . DIRECTORY_SEPARATOR . substr($dirName, 2) . Centurion_Inflector::extension($fileinfo[$this->getName()]['name']); $this->_localFilename = $filename; if (!file_exists($this->getDestination() . DIRECTORY_SEPARATOR . substr($dirName, 0, 2))) { mkdir($this->getDestination() . DIRECTORY_SEPARATOR . substr($dirName, 0, 2), 0770, true); } $this->getTransferAdapter()->addFilter('Rename', array('target' => $this->getDestination() . DIRECTORY_SEPARATOR . $filename, 'overwrite' => true))->setOptions(array('useByteString' => false)); // retrieve the real filesize return parent::receive(); }
private function _uploadFiles($uploadDir = '') { if (!is_dir($uploadDir)) { @mkdir($uploadDir); chmod($uploadDir, 0777); } //upload thumb image for ($i = 1; $i <= 6; $i++) { $image = new Zend_Form_Element_File('images' . $i); $image->setDestination($uploadDir); $image->addValidator('Count', false, 1); $image->addValidator('Extension', false, 'jpeg,jpg,png,gif'); $image->addFilter('Rename', array('target' => $uploadDir . DIRECTORY_SEPARATOR . $i . '.jpg', 'overwrite' => true)); $image->receive(); } // //uploads images for gallery // $images = new Zend_Form_Element_File( 'images' ); // $images->setDestination( $uploadDir ); // //$element->addValidator ( 'Size', false, 512000 ); // $images->addValidator( 'Extension', false, 'jpeg,jpg,png,gif' ); // $images->setMultiFile( count( $_POST ['images'] ) ); // $images->receive(); // return $images->getFileName( null, false ); }
public function advfileAction() { $this->view->Title = "Manage advertising picture gallery"; $this->view->headTitle($this->view->Title); $dir = ROOT_DIR . DATA_DIR . '/adv'; if ($this->getRequest()->isPost()) { $images = new Zend_Form_Element_File('images'); $images->setDestination($dir); //$element->addValidator ( 'Size', false, 512000 ); $images->addValidator('Extension', false, 'jpg,png,gif,swf'); $images->setMultiFile(count($_POST['images'])); $images->receive(); } if ($this->getRequest()->getParam('delete')) { @unlink($dir . '/' . $this->getRequest()->getParam('delete')); } $this->view->Adv = self::getFileDir($dir); }
/** * @param Zend_Form_Element_File $element * @param $item mixed * @return mixed * @throws Exception * */ public function saveUploadFile(Zend_Form_Element_File $element, $item) { $uploadPath = $element->getAttrib('data-upload') . '/' . $item->getId(); if (!file_exists(APPLICATION_ROOT . $uploadPath)) { mkdir(APPLICATION_ROOT . $uploadPath, 0755, true); } //$element->setDestination(APPLICATION_ROOT.$uploadPath); $fileName = $element->getFileName(null, false); $path = APPLICATION_ROOT . $uploadPath . '/' . $fileName; $path = iconv('utf-8', 'cp1251', $path); try { $element->addFilter('Rename', array('target' => $path, 'overwrite' => true)); $element->receive(); $item->setOptions(array($element->getAttrib('data-input') => $uploadPath . '/' . $fileName)); $this->getModelMapper()->save($item); } catch (Zend_File_Transfer_Exception $e) { throw new Exception('Bad image data: ' . $e->getMessage()); } return $item; }