【问题标题】:TYPO3 upload file frontend pluginTYPO3 上传文件前端插件
【发布时间】: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


【解决方案1】:

您必须在表单中添加 enctype。尝试调试 $_FILES 数组,以便您可以看到上传的文件

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-02
    • 1970-01-01
    相关资源
    最近更新 更多