2012-07-04 3 views
2

Я новичок в magento и создаю пользовательский модуль для загрузки файлов в magento admin.Использование move_uploaded_file в Magento Controller

Прямо сейчас у меня есть сообщение о загрузке файла в контроллере модуля. Здесь я использовал move_uploaded_file для загрузки файла в тот же каталог с помощью папки контроллера. ниже код я использовал для загрузки файла в контроллер

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

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

Я не в состоянии загрузить файл в папку каталога.

Так что я делаю неправильно? или предложить мне, если использование move_uploaded_file в контроллере magento - правильный способ обработки загрузки файла?

Спасибо.

ответ

4

Для того, чтобы загрузить файл в Magento, вы можете использовать Varien_File_Uploader :: сохранить() метод как:

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(); 
    } 
} 
+0

привет большое спасибо. –

+0

Рад помочь вам Пракаш. Ура! – MagePsycho

Смежные вопросы