【发布时间】:2012-04-26 11:42:47
【问题描述】:
我正在尝试用多张图片扩展 tt_address。但是如何构建上传表单并在 myext_pi1.php 中处理呢?
模板中的表格:
<input type="file" id="image1" name="tx_myext_pi1[image1]" />
<input type="file" id="image2" name="tx_myext_pi1[image2]" />
piVars中没有图像输出数组时(但所有文本区域和文本输入都在那里......
print_r($this->piVars);
进行实际上传如果...我可以访问 piVars 中的文件。那我怎么把它们上传到 上传/tx_myext/ ?我假设它正在使用这些功能或类似功能: http://api.typo3.org/typo3v4/master/html/classt3lib__ext_file_functions.html
更新
正如好心指出的那样,文件不会进入 piVars 而是进入 _FILES。看着分机。 feupload 我可以看到如何基于 _FILES 而不是 piVars 进行文件上传:
$ffunc = t3lib_div::makeInstance('t3lib_basicFileFunctions');
$path = $ffunc->getUniqueName($_FILES['image1']['name'], t3lib_div::getFileAbsFileName('uploads/pics/'));
t3lib_div::upload_copy_move($_FILES['image1']['tmp_name'], $path);
$file->setFile(basename($path));
这是有效的。如果这是最佳实践,我不知道。
【问题讨论】:
-
您是否在表单中添加了 ecntype ?调试 $_FILES 数组并告诉我们你有什么
-
谢谢。较新的人意识到文件进入 _FILES 而不是 piVars
-
我一直使用这种方法。如果您将其标记为答案会很好
标签: plugins upload typo3 frontend