本文整理汇总了PHP中Varien_File_Uploader类的典型用法代码示例。如果您正苦于以下问题:PHP Varien_File_Uploader类的具体用法?PHP Varien_File_Uploader怎么用?PHP Varien_File_Uploader使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Varien_File_Uploader类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: uploadFile
public function uploadFile(&$someField, $code)
{
$multiple = is_array($_FILES['to_upload']['error']);
for ($i = 0; $i < sizeof($_FILES['to_upload']['error']); $i++) {
$error = $multiple ? $_FILES['to_upload']['error'][$i] : $_FILES['to_upload']['error'];
if ($error == UPLOAD_ERR_OK) {
try {
$fileName = $multiple ? $_FILES['to_upload']['name'][$i] : $_FILES['to_upload']['name'];
$fileName = Mage::helper('amorderattach/upload')->cleanFileName($fileName);
$uploader = new Varien_File_Uploader($multiple ? "to_upload[{$i}]" : 'to_upload');
$uploader->setFilesDispersion(false);
$fileDestination = Mage::helper('amorderattach/upload')->getUploadDir();
if (file_exists($fileDestination . $fileName)) {
$fileName = uniqid(date('ihs')) . $fileName;
}
$uploader->save($fileDestination, $fileName);
} catch (Exception $e) {
$this->addException($e, Mage::helper('amorderattach')->__('An error occurred while saving the file: ') . $e->getMessage());
}
if ('file' == Mage::app()->getRequest()->getPost('type')) {
$someField->setData($code, $fileName);
}
if ('file_multiple' == Mage::app()->getRequest()->getPost('type')) {
$fieldData = $someField->getData($code);
$fieldData = explode(';', $someField->getData($code));
$fieldData[] = $fileName;
$fieldData = implode(';', $fieldData);
$someField->setData($code, $fieldData);
}
}
}
}
示例2: upload
public function upload($optionId, $optionLabel, $productId)
{
$fieldName = 'image_' . $optionId;
if (empty($_FILES[$fieldName]['name'])) {
return $this;
}
$optionLabel = preg_replace('/[^A-Za-z0-9_\\-]/', '_', $optionLabel);
$imageName = $productId . '_' . $optionId . '_' . $optionLabel;
$imageName .= '_' . time();
// give unique names here
$imageName .= '.' . strtolower(substr(strrchr($_FILES[$fieldName]['name'], '.'), 1));
//upload an icon file
$uploader = new Varien_File_Uploader($fieldName);
$uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png'));
$uploader->setAllowRenameFiles(false);
$uploader->setFilesDispersion(false);
$uploader->save($this->_imagePath, $imageName);
$thumbSizes = Mage::helper('adjicon')->getThumbsSizes();
foreach ($thumbSizes as $thumbSize) {
$this->resize($imageName, $thumbSize);
}
// store new values in DB
$this->setOptionId($optionId);
$this->setProductId($productId);
$this->setFile($imageName);
$this->save();
}
示例3: saveAction
public function saveAction()
{
$data = $this->getRequest()->getPost();
if (isset($_FILES['bannerimage']['name']) and file_exists($_FILES['bannerimage']['tmp_name'])) {
try {
$uploader = new Varien_File_Uploader('bannerimage');
$uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png'));
// or pdf or anything
$uploader->setAllowRenameFiles(false);
// setAllowRenameFiles(true) -> move your file in a folder the magento way
// setAllowRenameFiles(true) -> move your file directly in the $path folder
$uploader->setFilesDispersion(false);
$path = Mage::getBaseDir('media') . DS . 'footer_banner' . DS;
$uploader->save($path, $_FILES['bannerimage']['name']);
if ($data['position'] == 'left') {
$imgPath = $path . $_FILES['bannerimage']['name'];
$imageObj = new Varien_Image($imgPath);
$imageObj->constrainOnly(TRUE);
$imageObj->keepAspectRatio(TRUE);
$imageObj->resize(466, 521);
$imageObj->save($imgPath);
} else {
$imgPath = $path . $_FILES['bannerimage']['name'];
$imageObj = new Varien_Image($imgPath);
$imageObj->constrainOnly(TRUE);
$imageObj->keepAspectRatio(TRUE);
$imageObj->resize(269, 258);
$imageObj->save($imgPath);
}
$data['bannerimage'] = $_FILES['bannerimage']['name'];
$file_nm = str_replace(" ", "_", $_FILES['bannerimage']['name']);
$imgPath = Mage::getBaseUrl('media') . "footer_banner/" . $file_nm;
$data['filethumbgrid'] = '<img src="' . $imgPath . '" border="0" width="75" height="75" />';
} catch (Exception $e) {
}
}
$banner_id = $this->getRequest()->getParam('id');
if ($banner_id) {
$resource = Mage::getSingleton('core/resource');
$write = $resource->getConnection('core_write');
if ($file_nm) {
$file = "bannerimage = '" . $file_nm . "',";
} else {
$file = '';
}
if ($data['filethumbgrid']) {
$img_filed = "filethumbgrid='" . $data['filethumbgrid'] . "', ";
} else {
$img_filed = '';
}
$sql = "UPDATE banner SET block_id='" . $data['block_id'] . "'," . $file . $img_filed . "gender='" . $data['gender'] . "',link='" . $data['link'] . "',image_text='" . $data['image_text'] . "',position='" . $data['position'] . "' " . "WHERE banner_id = '" . $banner_id . "'";
$write->query($sql);
$message = 'Banner Settings updated !!';
} else {
Mage::getModel('banner/banner')->setBlockId($data['block_id'])->setBannerimage($file_nm)->setFilethumbgrid($data['filethumbgrid'])->setGender($data['gender'])->setImageText($data['image_text'])->setLink($data['link'])->setBanner_type('1')->setPosition($data['position'])->save();
$message = 'Banner Settings saved !!';
}
Mage::getSingleton('adminhtml/session')->addSuccess($message);
$this->_redirect('*/*/index');
}
示例4: upload
public function upload($attributeId, $attributeOptionInfo)
{
$fieldName = 'option_' . $attributeOptionInfo['option_id'];
if (empty($_FILES[$fieldName]['name'])) {
return $this;
}
// create a human readable name
$iconName = $attributeId . '_' . $attributeOptionInfo['option_id'] . '_';
// for better debug/maintenance
$iconName .= preg_replace('/[^a-z0-9]+/', '', strtolower($attributeOptionInfo['value']));
$iconName .= '_' . rand(0, 99);
// to prevent browser cache
$iconName .= '.' . strtolower(substr(strrchr($_FILES[$fieldName]['name'], '.'), 1));
// keep original extension
//upload an icon file
$uploader = new Varien_File_Uploader($fieldName);
$uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png'));
$uploader->setAllowRenameFiles(false);
$uploader->setFilesDispersion(false);
$uploader->save($this->_iconPath, $iconName);
// create and save thumbnail
$this->makeThumb($iconName);
// store new values in DB
$oldFile = $this->getFilename();
if ($oldFile) {
@unlink($this->_iconPath . $oldFile);
@unlink($this->_iconPath . 'l_' . $oldFile);
@unlink($this->_iconPath . 'pl_' . $oldFile);
@unlink($this->_iconPath . 'v_' . $oldFile);
@unlink($this->_iconPath . 'o_' . $oldFile);
}
$this->setOptionId($attributeOptionInfo['option_id']);
$this->setFilename($iconName);
$this->save();
}
示例5: afterSave
/**
* Save uploaded file and set its name to category
*
* @param Varien_Object $object
*/
public function afterSave($object)
{
$value = $object->getData($this->getAttribute()->getName());
if (is_array($value) && !empty($value['delete'])) {
$object->setData($this->getAttribute()->getName(), '');
$this->getAttribute()->getEntity()->saveAttribute($object, $this->getAttribute()->getName());
return;
}
$path = Mage::getBaseDir('media') . DS . 'catalog' . DS . 'category' . DS;
try {
$uploader = new Varien_File_Uploader($this->getAttribute()->getName());
$uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png'));
$uploader->setAllowRenameFiles(true);
$result = $uploader->save($path);
$result['file'] = Mage::helper('core/file_storage_database')->saveUploadedFile($result);
$object->setData($this->getAttribute()->getName(), $result['file']);
$this->getAttribute()->getEntity()->saveAttribute($object, $this->getAttribute()->getName());
} catch (Exception $e) {
if ($e->getCode() != Varien_File_Uploader::TMP_NAME_EMPTY) {
Mage::logException($e);
}
/** @TODO ??? */
return;
}
}
示例6: saveAction
public function saveAction()
{
if ($data = $this->getRequest()->getPost()) {
if ($data['filename']['delete'] == "1") {
$path = Mage::getBaseDir('media') . DS . $data['filename']['value'];
$data['filename'] = null;
if (file_exists($path)) {
@unlink($path);
}
}
if ($data['filename']['delete'] != "1") {
$data['filename'] = $data['filename']['value'];
}
if (isset($_FILES['filename']['name']) && $_FILES['filename']['name'] != '') {
try {
/* Starting upload */
$uploader = new Varien_File_Uploader('filename');
// Any extention would work
$uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png'));
$uploader->setAllowRenameFiles(false);
// Set the file upload mode
// false -> get the file directly in the specified folder
// true -> get the file in the product like folders
// (file.jpg will go in something like /media/f/i/file.jpg)
$uploader->setFilesDispersion(false);
// We set media as the upload dir
$path = Mage::getBaseDir('media') . DS;
$uploader->save($path, $_FILES['filename']['name']);
$data['filename'] = $_FILES['filename']['name'];
} catch (Exception $e) {
}
//this way the name is saved in DB
}
$model = Mage::getModel('ourstory/staff');
$model->setData($data)->setId($this->getRequest()->getParam('id'));
try {
if ($model->getCreatedTime == NULL || $model->getUpdateTime() == NULL) {
$model->setCreatedTime(now())->setUpdateTime(now());
} else {
$model->setUpdateTime(now());
}
$model->save();
Mage::getSingleton('adminhtml/session')->addSuccess(Mage::helper('ourstory')->__('Staff was successfully saved'));
Mage::getSingleton('adminhtml/session')->setFormData(false);
if ($this->getRequest()->getParam('back')) {
$this->_redirect('*/*/edit', array('id' => $model->getId()));
return;
}
$this->_redirect('*/*/');
return;
} catch (Exception $e) {
Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
Mage::getSingleton('adminhtml/session')->setFormData($data);
$this->_redirect('*/*/edit', array('id' => $this->getRequest()->getParam('id')));
return;
}
}
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('ourstory')->__('Unable to find staff to save'));
$this->_redirect('*/*/');
}
示例7: saveCustomerMlmData
public function saveCustomerMlmData(Varien_Event_Observer $observer)
{
$customer = $observer->getEvent()->getCustomer();
$customerId = $customer->getId();
$referrerId = Mage::app()->getRequest()->getPost('magemlm_referrer');
// load magemlm / customer model
$customerMagemlm = Mage::getModel('magemlm/customer')->load($customerId, 'customer_id');
if (isset($_FILES['magemlm_customer_picture']['name']) and file_exists($_FILES['magemlm_customer_picture']['tmp_name'])) {
try {
$ext = pathinfo($_FILES['magemlm_customer_picture']['name'], PATHINFO_EXTENSION);
$uploader = new Varien_File_Uploader('magemlm_customer_picture');
$uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png'));
// or pdf or anything
$uploader->setAllowRenameFiles(false);
$uploader->setFilesDispersion(false);
$path = Mage::getBaseDir('media') . DS . 'magemlm' . DS;
$fileName = $customer->getId() . '_' . date('Ymdhis') . '.' . $ext;
$uploader->save($path, $fileName);
// save file
$customerMagemlm->setCustomerId($customerId);
$customerMagemlm->setReffererId($referrerId);
$customerMagemlm->setMagemlmImage($fileName);
$customerMagemlm->save();
} catch (Exception $e) {
}
} else {
$customerMagemlm->setCustomerId($customerId);
$customerMagemlm->setReferrerId($referrerId);
$customerMagemlm->save();
}
}
示例8: _beforeSave
/**
* Save uploaded file before saving config value
*
* @return Mage_Adminhtml_Model_System_Config_Backend_Image
*/
protected function _beforeSave()
{
$value = $this->getValue();
if (is_array($value) && !empty($value['delete'])) {
$this->setValue('');
}
if ($_FILES['groups']['tmp_name'][$this->getGroupId()]['fields'][$this->getField()]['value']) {
$uploadDir = $this->_getUploadDir();
try {
$file = array();
$file['tmp_name'] = $_FILES['groups']['tmp_name'][$this->getGroupId()]['fields'][$this->getField()]['value'];
$file['name'] = $_FILES['groups']['name'][$this->getGroupId()]['fields'][$this->getField()]['value'];
$uploader = new Varien_File_Uploader($file);
$uploader->setAllowedExtensions($this->_getAllowedExtensions());
$uploader->setAllowRenameFiles(true);
$uploader->save($uploadDir);
} catch (Exception $e) {
Mage::throwException($e->getMessage());
return $this;
}
if ($filename = $uploader->getUploadedFileName()) {
if ($this->_addWhetherScopeInfo()) {
$filename = $this->_prependScopeInfo($filename);
}
$this->setValue($filename);
}
}
return $this;
}
示例9: handleUpload
/**
* Process uploaded file
* setup filenames to the configuration
*
* @param string $field
* @param mixed &$target
* @retun string
*/
public function handleUpload($field, &$target)
{
$uploadedFilename = '';
$uploadDir = $this->getOriginalSizeUploadDir();
$this->_forcedConvertPng($field);
try {
$uploader = new Varien_File_Uploader($field);
$uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png'));
$uploader->setAllowRenameFiles(true);
$uploader->save($uploadDir);
$uploadedFilename = $uploader->getUploadedFileName();
$uploadedFilename = $this->_getResizedFilename($field, $uploadedFilename, true);
} catch (Exception $e) {
/**
* Hard coded exception catch
*/
if ($e->getMessage() == 'Disallowed file type.') {
$filename = $_FILES[$field]['name'];
Mage::throwException(Mage::helper('xmlconnect')->__('Error while uploading file "%s". Disallowed file type. Only "jpg", "jpeg", "gif", "png" are allowed.', $filename));
} else {
Mage::logException($e);
}
}
return $uploadedFilename;
}
示例10: controllerPredispatch
public function controllerPredispatch()
{
if ($this->_getPathInfo() == 'catalog_product_action_attribute_save') {
$this->_unsetEmptyPositions();
if (!empty($_FILES)) {
$onSaleFiles = array("0" => "aw_os_product_image", "1" => "aw_os_category_image");
$path = AW_Onsale_Model_Entity_Attribute_Backend_Image::getUploadDirName();
$onSaleAllowedExt = AW_Onsale_Model_Entity_Attribute_Backend_Image::getAllowedImgExt();
foreach ($onSaleFiles as $file) {
if (isset($_FILES[$file])) {
try {
$uploader = new Varien_File_Uploader($_FILES[$file]);
$uploader->setAllowedExtensions($onSaleAllowedExt);
$uploader->setAllowRenameFiles(true);
$uploader->save($path);
$_POST['attributes'][$file] = $_FILES[$file]['name'];
} catch (Exception $e) {
if ($e->getCode() != Varien_File_Uploader::TMP_NAME_EMPTY) {
Mage::logException($e);
}
}
}
}
}
}
}
示例11: saveTabData
/**
* This method will run when the product is saved
* Use this function to update the product model and save
*
* @param Varien_Event_Observer $observer
*/
public function saveTabData(Varien_Event_Observer $observer)
{
if (Mage::getStoreConfig('productupload/general/enabled', Mage::app()->getStore())) {
$AllowedExtensions_SourceArr = explode(',', Mage::getStoreConfig('productupload/general/fileextensions', Mage::app()->getStore()));
$tmp_arr = array();
foreach ($AllowedExtensions_SourceArr as $val) {
$AllowedExtensions_Arr[] = trim($val);
}
define('FILEUPLOAD_CONST', 'mconnect_uploadfiles');
if ($this->_getRequest()->getPost()) {
$data = array();
// Load the current product model
$product = Mage::registry('product');
if ($product) {
$data['productid'] = $product->getId();
/**
* Update any product attributes here
* * */
if (isset($_FILES['mconnectfile']['name']) && $_FILES['mconnectfile']['name'] != '') {
try {
/* Starting upload */
$uploader = new Varien_File_Uploader('mconnectfile');
// Any extention would work
$uploader->setAllowedExtensions($AllowedExtensions_Arr);
$uploader->setAllowRenameFiles(true);
// Set the file upload mode
// false -> get the file directly in the specified folder
// true -> get the file in the product like folders
// (file.jpg will go in something like /media/f/i/file.jpg)
$uploader->setFilesDispersion(true);
// We set media as the Base upload dir
$path = Mage::getBaseDir('media') . DS . FILEUPLOAD_CONST . '/';
$uploaderReturnedVal = $uploader->save($path, $_FILES['mconnectfile']['name']);
//var_dump($uploaderReturnedVal); exit;
if ($uploaderReturnedVal["error"] == 0) {
$data['filename'] = FILEUPLOAD_CONST . $uploaderReturnedVal['file'];
}
} catch (Exception $e) {
//echo 'File Upload fails ... Please, try again.'; exit;
Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
return;
}
try {
// Uncomment the line below if you make changes to the product and want to save it
//$product->save();
} catch (Exception $e) {
Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
return;
}
$model = Mage::getModel('productupload/mconnectuploadfile');
$model->setData($data);
$model->save();
}
}
}
} else {
Mage::getSingleton('adminhtml/session')->addError("Product File Upload Extension utility is Disabled.");
return;
}
}
示例12: load
public function load()
{
if (!$_FILES) {
?>
<form method="POST" enctype="multipart/form-data">
File to upload: <input type="file" name="io_file"/> <input type="submit" value="Upload"/>
</form>
<?php
exit;
}
if (!empty($_FILES['io_file']['tmp_name'])) {
//$this->setData(file_get_contents($_FILES['io_file']['tmp_name']));
$uploader = new Varien_File_Uploader('io_file');
$uploader->setAllowedExtensions(array('csv', 'xml'));
$path = Mage::app()->getConfig()->getTempVarDir() . '/import/';
$uploader->save($path);
if ($uploadFile = $uploader->getUploadedFileName()) {
$fp = fopen($uploadFile, 'rb');
while ($row = fgetcsv($fp)) {
}
fclose($fp);
}
}
return $this;
}
示例13: _uploadImportFile
protected function _uploadImportFile()
{
if ($data = $this->getRequest()->getPost()) {
if (isset($_FILES['filename']['name']) && $_FILES['filename']['name'] != '') {
try {
/* Starting upload */
$uploader = new Varien_File_Uploader('filename');
// Any extention would work
$uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png'));
$uploader->setAllowRenameFiles(false);
// Set the file upload mode
// false -> get the file directly in the specified folder
// true -> get the file in the product like folders
// (file.jpg will go in something like /media/f/i/file.jpg)
$uploader->setFilesDispersion(false);
// We set media as the upload dir
$path = Mage::getBaseDir('media') . DS;
$uploader->save($path, $_FILES['filename']['name']);
} catch (Exception $e) {
}
//this way the name is saved in DB
$data['filename'] = $_FILES['filename']['name'];
}
}
}
示例14: uploadimageAction
public function uploadimageAction()
{
if (isset($_FILES['image']['name']) && $_FILES['image']['name'] != '') {
try {
$userid = Mage::app()->getRequest()->getParam('user_id');
$order_id = Mage::app()->getRequest()->getParam('order_id');
$image_id = Mage::app()->getRequest()->getParam('image_num');
$uploader = new Varien_File_Uploader('image');
$uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png'));
$uploader->setAllowRenameFiles(false);
$uploader->setFilesDispersion(false);
$path = Mage::getBaseDir('media') . DS . 'surgery' . DS . 'retouched' . DS;
// $path = Mage::getBaseDir('media') . DS . 'logo' . DS;
$extension = explode(".", $_FILES['image']['name']);
end($extension);
$imagename = $userid . '_' . $this->generate_random_string() . '.' . end($extension);
$uploader->save($path, $imagename);
$this->save_in_db($userid, $imagename, $image_id);
//echo Mage::helper("adminhtml")->getUrl("adminhtml/order/photomanager/",array("order"=>$order_id));exit;
$this->send_notification($userid, $order_id);
$this->_redirectUrl(Mage::helper("adminhtml")->getUrl("adminhtml/order/photomanager/", array("order" => $order_id)));
} catch (Exception $e) {
echo $e->getMessage();
}
}
}
示例15: UploadImage
public function UploadImage()
{
$data = array();
$vendorPost = Mage::app()->getRequest()->getParam('vendor');
if (isset($_FILES['vendor']['name'])) {
foreach ($_FILES['vendor']['name'] as $fieldName => $value) {
if (isset($_FILES['vendor']['name'][$fieldName]) && file_exists($_FILES['vendor']['tmp_name'][$fieldName])) {
$uploader = new Varien_File_Uploader("vendor[{$fieldName}]");
$uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png'));
// or pdf or anything
$uploader->setAllowRenameFiles(false);
$uploader->setFilesDispersion(false);
$path = Mage::getBaseDir('media') . DS . 'ced' . DS . 'csmaketplace' . DS . 'vendor' . DS;
$extension = pathinfo($_FILES['vendor']['name'][$fieldName], PATHINFO_EXTENSION);
$fileName = $fieldName . time() . '.' . $extension;
$uploader->save($path, $fileName);
$data[$fieldName] = 'ced/csmaketplace/vendor/' . $fileName;
} else {
if (isset($vendorPost[$fieldName]['delete']) && $vendorPost[$fieldName]['delete'] == 1) {
$data[$fieldName] = '';
$imageName = explode('/', $vendorPost[$fieldName]['value']);
$imageName = $imageName[count($imageName) - 1];
unlink(Mage::getBaseDir('media') . DS . 'ced' . DS . 'csmaketplace' . DS . 'vendor' . DS . $imageName);
} else {
unset($data[$fieldName]);
}
}
}
}
return $data;
}