Php Magento-在后台上传图像
我正试图在Magento的销售规则中上载图像 我将遵循以下教程: 我的字段必须在本机SalesRules Magento模块中,因此我重载了以下文件: Mage\u Adminhtml\u Block\u Promo\u Quote\u Edit\u表单Php Magento-在后台上传图像,php,magento,image-uploading,Php,Magento,Image Uploading,我正试图在Magento的销售规则中上载图像 我将遵循以下教程: 我的字段必须在本机SalesRules Magento模块中,因此我重载了以下文件: Mage\u Adminhtml\u Block\u Promo\u Quote\u Edit\u表单 protected function _prepareForm() { $form = new Varien_Data_Form(array('id' => 'edit_form', 'action' => $this-&
protected function _prepareForm()
{
$form = new Varien_Data_Form(array('id' => 'edit_form', 'action' => $this->getData('action'), 'method' => 'post','enctype' => 'multipart/form-data'));
$form->setUseContainer(true);
$this->setForm($form);
return parent::_prepareForm();
}
Mage\u Adminhtml\u Block\u Promo\u Quote\u Edit\u Tab\u Main
我在_prepareForm()函数中添加了我的字段
在此文件中,我更改了我的报税表:
从
到
最后我重载了这个文件:
Mage_Adminhtml_Promo_QuoteControl,我将添加到saveAction()函数:
if(isset($_FILES['image_promo']['name']) and (file_exists($_FILES['image_promo']['tmp_name']))) {
try {
$uploader = new Varien_File_Uploader('image_promo');
$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 ;
$uploader->save($path, $_FILES['image_promo']['name']);
$data['image_promo'] = $_FILES['image_promo']['name'];
}catch(Exception $e) {
Mage::logException($e);
}
}else {
if(isset($data['image_promo']['delete']) && $data['image_promo']['delete'] == 1)
$data['image_main'] = '';
else
unset($data['image_promo']);
}
当我试图保存而不上传任何文件时,magento工作正常,但当我有一个图像时,我没有通过我的saveAction,我在仪表板上被重定向
我正试图通过这种方式在Main.php(第二个文件)中隐藏form_键
但这并没有改变任何事情
有什么想法吗
return parent::_prepareForm();
return Mage_Adminhtml_Block_Widget_Form::_prepareForm();
if(isset($_FILES['image_promo']['name']) and (file_exists($_FILES['image_promo']['tmp_name']))) {
try {
$uploader = new Varien_File_Uploader('image_promo');
$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 ;
$uploader->save($path, $_FILES['image_promo']['name']);
$data['image_promo'] = $_FILES['image_promo']['name'];
}catch(Exception $e) {
Mage::logException($e);
}
}else {
if(isset($data['image_promo']['delete']) && $data['image_promo']['delete'] == 1)
$data['image_main'] = '';
else
unset($data['image_promo']);
}
$fieldset->addField('form_key', 'hidden', array(
'value' => Mage::getSingleton('core/session')->getFormKey(),
'name' => 'form_key',
));