TYPO3以前端形式上传多个文件

时间:2017-09-12 09:05:58

标签: php file upload typo3 extbase

我正在使用https://github.com/helhum/upload_example创建一个允许在前端上传文件的表单。它适用于单个文件,但我需要上传多个文件。

所以这是我的表格字段:

XDocument doc = XDocument.Load(XMLFileFullName);

//code added by Reuel
//var TASubmittedFileDT = doc.Root.Elements("{http://tempuri.org/BatchDS.xsd}TASubmittedFileDT").ToList();
//XElement root = XElement.Load(XMLFileFullName);
IEnumerable<XElement> TASubmittedFileDT = from p in doc.Root.Elements() select p;
foreach (XElement e in TASubmittedFileDT)
  Console.WriteLine(e);

Console.WriteLine("GOT HERE!!!");
Console.ReadLine();

请注意,我添加了添加属性“multiple”。

当我发送表单时,我总是在<mr:form.upload property="files" id="publication-files-{contentUid}" class="file" data="{loading-text: '{f:translate(key: \'uploading\', extensionName: extKey)}', max-file-size: maxFileSize}" additionalAttributes="{autocomplete: 'off', accept: settings.allowedFiles, multiple: 'multiple'}"/> 类的convertFrom方法中获得1个文件,即使我选择了3或4 ...

有人已经尝试过吗?如果是,请帮助:)

谢谢,

热雷米

2 个答案:

答案 0 :(得分:2)

我发现了问题。我不得不使用form.upload ViewHelper的原生“multiple”参数:

<mr:form.upload property="files" multiple="multiple" id="publication-files-{contentUid}" class="file"
                        data="{loading-text: '{f:translate(key: \'uploading\', extensionName: extKey)}', max-file-size: maxFileSize}"
                        additionalAttributes="{autocomplete: 'off', accept: settings.allowedFiles}"/>

答案 1 :(得分:0)

从属性中删除.0。这说:使用域模型属性&#34;文件&#34;并声明第一个数组对象。

所以你必须:

<mr:form.upload property="files" id="publication-files-{contentUid}" class="file"
                        data="{loading-text: '{f:translate(key: \'uploading\', extensionName: extKey)}', max-file-size: maxFileSize}"
                        additionalAttributes="{autocomplete: 'off', accept: settings.allowedFiles, multiple: 'multiple'}"/>