在Magento Controller中使用move_uploaded_file [英] Using move_uploaded_file in Magento Controller

查看:61
本文介绍了在Magento Controller中使用move_uploaded_file的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是magento的新手,我正在magento admin中创建用于文件上传的自定义模块.

I am new to magento and i am Creating Custom module for File upload in magento admin.

现在我已经将上传文件发布到了我的模块控制器中. 在这里,我已经使用move_uploaded_file将文件上传到与控制器文件夹相同的目录中. 我在控制器中用于文件上传的以下代码

Right now i have post the upload file in my module controller. Here i have used move_uploaded_file to upload file in same directory with in controller folder. below code i have used for file upload in controller

$file_name=$_FILES["file"]["name"];
    $file_path="import/$file_name";

    if(move_uploaded_file($_FILES["file"]["tmp_name"],$file_path))
    {
        // my files not uploading 
    }

我无法上载目录文件夹中的文件.

I can't able to upload the file in directory folder.

所以我做错了什么?还是建议我,如果在magento控制器中使用move_uploaded_file是处理文件上传的正确方法?

So what i am doing wrong? or suggest me if using move_uploaded_file in magento controller is correct way to handle file upload ?

谢谢.

推荐答案

要在Magento中上传文件,可以使用Varien_File_Uploader :: save()方法如下:

In order to upload file in Magento, you can use Varien_File_Uploader::save() method as:

if(isset($_FILES['file']['name']) && $_FILES['file']['name'] != '') {
    try {
        $fileName       = $_FILES['file']['name'];
        $fileExt        = strtolower(substr(strrchr($fileName, "."), 1));
        $fileNamewoe    = rtrim($fileName, $fileExt);
        $fileName       = str_replace(' ', '', $fileNamewoe) . '.' . $fileExt;

        $uploader       = new Varien_File_Uploader('file');
        $uploader->setAllowedExtensions(array('png', 'jpg')); //allowed extensions
        $uploader->setAllowRenameFiles(false);
        $uploader->setFilesDispersion(false);
        $path = Mage::getBaseDir('media') . DS . 'yourModuleFolder';
        if(!is_dir($path)){
            mkdir($path, 0777, true);
        }
        $uploader->save($path . DS, $fileName );
    } catch (Exception $e) {
        echo $e->getMessage();
    }
}

这篇关于在Magento Controller中使用move_uploaded_file的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆