2012-02-08 12 views
1

(Uploadify 2.1.4を使用して)Symfony2でAJAXリクエストで受け取ったテキストファイルをアップロードします。どのようにアクションでそれを処理できますか?私はofficial docsの情報を見つけましたが、私はそれが私が探しているものではないと思います。例えばSymfony2:ファイルアップロードプラグインを使用してファイルをアップロード

、私は、Zend Frameworkのような状況をこのように処理された:

$adapter = new Zend_File_Transfer_Adapter_Http(); 
    $adapter->setFilters(array(
     'Rename' => array(
      'target' => sprintf('%s/%d_%s', Zend_Registry::get('config')->uploads->uploadPath, time(), $adapter->getFileName(null, false), 'UTF-8'), 
      'overwrite' => true, 
     ), 
    )); 
    try 
    { 
     $adapter->receive(); 
    } 
    catch (Zend_File_Transfer_Exception $e) 
    { 
     throw new Zend_Controller_Action_Exception(sprintf('Bad file: %s', $e->getMessage())); 
    } 

答えて

6

私は、次の簡単な解決策を見つけました。多分それは誰かに助けになるでしょう。 ;)

フロントエンド部分:

$('#upload-file').uploadify(
    { 
     script:   '/upload-file', 
     folder:   '/uploads', 
     method:   'POST', 
     uploader:  '/bundles/mybundle/flash/uploadify.swf', 
     cancelImg:  '/bundles/mybundle/images/cancel.png', 
     buttonImg:  '/bundles/mybundle/images/upload.png', 
     width:   48, 
     height:   48, 
     auto:   false, 
     queueID:  'fileQueue', 
     wmode:   'transparent', 
     fileDataName: 'uploaded_file', 
     fileDesc:  'Text File (*.txt)', 
     fileExt:  '*.txt', 
     sizeLimit:  8000000, 
     multi:   true, 
     simUploadLimit: 3, 
     onError:  function (event, id, fileObj, errorObj) 
     { 
      console.log(errorObj.type + ' Error: ' + errorObj.info); 
     } 
    }); 

バックエンド部分:

public function uploadFileAction() 
{ 
    $request = $this->getRequest(); 
    $destination = preg_replace('/app$/si', 'web' . $request->request->get('folder'), $this->get('kernel')->getRootDir()); 
    $uploadedFile = $request->files->get('uploaded_file'); 

    $uploadedFile->move($destination, $uploadedFile->getClientOriginalName()); 

    return new Response(1); 
} 

問題が閉じています!

+0

残念ながら、ソリューションには検証がありません。おそらくあなたは私に何かを提供することができます。ありがとう! –

+0

誰かがこれを関連する部分に単純化してもらえますか?ありがとう! –

関連する問題