2011-09-30 52 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"); 
}