public function index05Action() { if ($this->request->isPost()) { $upload = new \ZendVN\File\Upload(); $fileName = $upload->getFileName(); $upload->addValidator("Extension", true, array("png", "jpg"), "image")->addValidator("Size", false, array("min" => "100KB", "max" => "1MB"), "zip"); foreach ($fileName as $key => $value) { if ($upload->isValid($key)) { $prefix = $key == "image" ? "img_" : "file_"; $upload->uploadFile($key, FILES_PATH . $key, array("task" => "rename"), $prefix); } else { $message = $upload->getMessages(); echo "<pre style='font-weight:bold'>"; print_r($message); echo "</pre>"; } } } }
public function indexAction() { $error = array(); //Tiêu đề $title = 'Thư viện ảnh'; $this->headTitle($title)->setSeparator(" - ")->append("Hệ thống quản trị website"); if ($this->getRequest()->isPost()) { //Upload $image = ''; $upload = new \ZendVN\File\Upload(); $fileName = $upload->getFileName(); if (!empty($fileName)) { $upload->addValidator('Extension', true, array('png', 'jpg', 'gif'), 'file'); $upload->addValidator('Size', false, array('min' => '20kb', 'max' => '5mb'), 'file'); if (!$upload->isValid('file')) { $messages = $upload->getMessages(); if (!empty($messages['fileExtensionFalse'])) { $error[] = 'Định dạng file không hợp lệ!'; } if (!empty($messages['fileSizeTooBig'])) { $error[] = 'Kích thước file quá lớn!'; } if (!empty($messages['fileSizeTooSmall'])) { $error[] = 'Kích thước file quá nhỏ!'; } } else { //upload ảnh mới $file = $upload->uploadFile('file', UPLOAD_PATH . '/gallery/', array('task' => 'rename'), 'batdongsan_'); } } else { $error[] = 'Bạn chưa chọn file upload'; } if (empty($this->_arrPost['name'])) { $error[] = 'Bạn chưa nhập tên file'; } if (empty($error)) { $data = array('user_id' => $this->identity()->id, 'images' => $file, 'date_time' => date('d/m/y h:i:s'), 'name' => $this->_arrPost['name']); $this->getTable()->saveItem($data, array('task' => 'save-file')); $this->flashMessenger()->addSuccessMessage('Dữ liệu đã được lưu thành công'); $this->redirect()->toUrl('/admin/gallery/'); } } return new ViewModel(array('title' => $title, 'arrParam' => $this->_arrParam, 'currentController' => $this->_currentController, 'error' => $error)); }
public function uploadAction() { $view = new ViewModel(); $dataItems = null; $dataPaginator = null; $isXmlHttpRequest = false; //Disable Layout if ($this->getRequest()->isXmlHttpRequest() == true) { $isXmlHttpRequest = true; if ($this->getRequest()->isPost()) { $upload = new \ZendVN\File\Upload(); $upload->addValidator('Extension', true, array('png', 'jpg'), 'image'); $upload->addValidator('Size', false, array('min' => '1kb', 'max' => '500kb'), 'image'); if ($upload->isValid('image')) { //upload ảnh mới $fileName = $upload->uploadFile('image', UPLOAD_PATH . '/email-template/', array('task' => 'rename'), 'batdongsan_'); //Thực hiện xóa ảnh cũ $upload->removeFile(UPLOAD_PATH . '/email-template/' . $this->_arrPost['image_hidden']); //update database $arrParam = array('id' => $this->_arrPost['id'], 'images' => $fileName); $this->getTable()->saveItem($arrParam, array('task' => 'edit')); } else { $fileName = $this->_arrPost['image_hidden']; $messages = $upload->getMessages(); if (!empty($messages['fileExtensionFalse'])) { echo '<script>alert("Định dạng file không hợp lệ");</script>'; } if (!empty($messages['fileSizeTooBig'])) { echo '<script>alert("Kích thước file quá lớn");</script>'; } if (!empty($messages['fileSizeTooSmall'])) { echo '<script>alert("Kích thước file quá nhỏ");</script>'; } } } } $view->setVariables(array('isXmlHttpRequest' => $isXmlHttpRequest, 'fileName' => $fileName, 'arrParam' => $this->_arrParam, 'currentController' => $this->_currentController)); $view->setTerminal(true); return $view; }
public function uploadifyDbAction() { $result = array(); if ($this->getRequest()->isPost()) { if (!empty($_FILES)) { //Upload File $upload = new \ZendVN\File\Upload(); $fileName = $upload->getFileName(); if (!empty($fileName)) { $upload->addValidator('Extension', true, array('png', 'jpg'), 'Filedata'); $upload->addValidator('Size', false, array('min' => '10kb', 'max' => '500kb'), 'Filedata'); if (!$upload->isValid('Filedata')) { $result['status'] = 'error'; $messages = $upload->getMessages(); if (!empty($messages['fileExtensionFalse'])) { $result['messages']['upload'] = 'Định dạng file không hợp lệ'; } if (!empty($messages['fileSizeTooBig'])) { $result['messages']['upload'] = 'Kích thước file quá lớn'; } if (!empty($messages['fileSizeTooSmall'])) { $result['messages']['upload'] = 'Kích thước file quá nhỏ'; } } else { $filename = $upload->uploadFile('Filedata', UPLOAD_PATH . '/project/', array('task' => 'rename'), 'batdongsan_'); $item = $this->getTable()->getItem($this->_arrPost, array('task' => 'get-item')); //Mảng hình ảnh lấy từ database $Imgdata = \Zend\Json\Json::decode($item->images); // mảng chưa file upload hiện tại $newValue = array(); $newValue[] = $filename; //Gộp 2 mảng if (!empty($Imgdata)) { $newValue = array_merge($newValue, $Imgdata); } //mảng chứa chuỗi json hình ảnh $arrParam['id'] = $this->_arrPost['id']; $arrParam['images'] = \Zend\Json\Json::encode($newValue); //Cập nhật hình ảnh vào database $this->getTable()->saveItem($arrParam, array('task' => 'edit')); $result['status'] = 'success'; $result['messages']['upload'] = 'Thành công'; } } } } echo \Zend\Json\Json::encode($result); return $this->getResponse(); }
public function uploadBackgroundAction() { $view = new ViewModel(); $dataItems = null; $dataPaginator = null; $isXmlHttpRequest = false; //Disable Layout if ($this->getRequest()->isXmlHttpRequest() == true) { $isXmlHttpRequest = true; if ($this->getRequest()->isPost()) { $upload = new \ZendVN\File\Upload(); $upload->addValidator('Extension', true, array('png', 'jpg'), 'image'); $upload->addValidator('Size', false, array('min' => '1kb', 'max' => '500kb'), 'image'); if ($upload->isValid('image')) { //upload ảnh mới $fileName = $upload->uploadFile('image', UPLOAD_PATH . '/skin/', array('task' => 'rename'), 'batdongsan_'); //Thực hiện xóa ảnh cũ $item = $this->getTable()->getItem($this->_arrParam, array('task' => 'get-item')); $arrConfig = \Zend\Json\Json::decode($item->config_background); foreach ($arrConfig->listBackground as $key => $item) { $arrBackground['listBackground'][] = array('name' => $item->name, 'type' => $item->type); } $arrBackground['listBackground'][] = array('name' => $fileName, 'type' => 'system'); $arrBackground['curentBackground'] = array('background' => $arrConfig->curentBackground->background, 'style' => $arrConfig->curentBackground->style); //Chống tấn công XSS $purifier = new \HTMLPurifier_HTMLPurifier(); $arrParam = array('id' => 1, 'config_background' => \Zend\Json\Json::encode($arrBackground)); $this->getTable()->saveItem($arrParam, array('task' => 'edit')); } else { $fileName = $this->_arrPost['image_hidden']; $messages = $upload->getMessages(); if (!empty($messages['fileExtensionFalse'])) { echo '<script>alert("Định dạng file không hợp lệ");</script>'; } if (!empty($messages['fileSizeTooBig'])) { echo '<script>alert("Kích thước file quá lớn");</script>'; } if (!empty($messages['fileSizeTooSmall'])) { echo '<script>alert("Kích thước file quá nhỏ");</script>'; } } } } $view->setVariables(array('isXmlHttpRequest' => $isXmlHttpRequest, 'fileName' => $fileName, 'arrParam' => $this->_arrParam, 'currentController' => $this->_currentController)); $view->setTerminal(true); return $view; }