输入字段中的base64字符串被截断

时间:2016-05-30 15:34:33

标签: php google-chrome php-7 apache2.4

我正在使用this file uploader plugin,它使用javascript的FileReader API来读取文件并将它们作为base64字符串放入输入元素中。这些文件最多可达5mb,因此base64字符串可能会变得很长。

无论如何,起初一切似乎都正常工作:我可以选择一个文件并检查我隐藏的输入内容,并且base64字符串等于我在linux机器上使用base64命令可以获得的字符串:base64 file.pdf > file.b64

问题是,当我发布表单时,字符串在524261个字符后被截断,缺少最后50000个字符(或多或少)。这意味着该文件已损坏。

我已经尝试更改一些php设置(通过.htaccess文件),但它仍然无效,老实说我无法弄清楚问题是什么......

upload_max_filesize = 10M
post_max_size = 10M

1 个答案:

答案 0 :(得分:0)

所以,问题实际上是chrome(我想其他一些浏览器也会遇到同样的问题)。我通过使用textarea而不是输入来解决它。由于我使用的fileUploader插件不支持textareas而不支持文件内容的输入,我可能会使用修复程序执行pull请求。谢谢gre_gor指出浏览器问题,谢谢大家的帮助。