2011-09-30 39 views
1

我試圖爲我的symfony應用程序開發一個文件上傳系統。我嘗試使用sfWidgetFormInputFile對象,但並不知道如何使用它> _ <。現在,我想傳統去做,用這樣的代碼視圖:Symfony:上傳沒有sfWidgetFormInputFile()的文件

<form action="<?php echo url_for('home/saveFile')?>" method="post"> 
    <input type="file" id="file" name="file"> 
    <input type="submit" value="Upload"> 
</form> 

我如何可以訪問動作類提交的文件資料?

PS:我想我在表單中做了一些錯誤,因爲在symfony開發欄中,在配置節中,在全局小節中,有一個名爲'files'的參數,它是空的。發送的文件應該在那裏,對嗎?

非常感謝您的時間! :d

+0

表單的enctype缺失。 – Maerlyn

+0

我一直在度假,所以我剛剛讀過它。謝謝 :) –

回答

2

sfWidgetFileInputFile是做你想做的事情的一個更好的方法......但如果你真的想這樣做手工 - 這是你在你的action.class.php功能所需要的 - >

(其中$requestsfWebRequest對象)

foreach ($request->getFiles() as $fileName) { 
    $fileSize = $fileName['size']; 
    $fileType = $fileName['type']; 
    $theFileName = $fileName['name']; 
    move_uploaded_file($fileName['tmp_name'], "$newdirectory/$theFileName"); 
}