PHP 不处理来自 multipart/form-data 表单的数据

标签 php forms

我的网站不处理来自设置为 enctype="multipart/form-data" 的表单的数据。但是 'php://input' 获取数据,即使 php manual说它不应该用于 enctype。我认为可能是某些设置有误,但我不知道是哪一个。

部分代码:

<?php
    var_dump($_REQUEST);
    echo file_get_contents("php://input");
?>
<form id="slideForm" action="" method="post" enctype="multipart/form-data">
    <input type="text" name="test">
    <input type="submit" name="submit" id="submit" value="ADD"/>
</form>

更新

我已经联系了为我的网站托管服务器的公司的支持,我们已经解决了这个问题。我不完全确定问题出在哪里,但他们的服务器和 php 有点奇怪。我不在 PHP 7.0 或 PHP 5.6 上工作,但如果我使用它们的 native (PHP 5.5),它可以正常工作。

最佳答案

我不明白你想发布哪种类型的数据。如果它只是一个测试,你应该只:

<?php
    var_dump($_POST);
?>
<form id="slideForm" action="" method="post">
    <input type="text" name="test">
    <input type="submit" name="submit" id="submit" value="ADD"/>
</form>

如果你想发布一个文件,你必须有:

<?php
    var_dump($_POST);
?>
<form id="slideForm" action="" method="post" enctype="multipart/form-data">
    <input type="file" name="test">
    <input type="submit" name="submit" id="submit" value="ADD"/>
</form>

确保您能够在您的 PHP 服务器上发布数据。 检查这些 php 变量:

upload_max_filesize
upload_tmp_dir
file_uploads

关于PHP 不处理来自 multipart/form-data 表单的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36224559/

相关文章:

php - 将 else 转换为具有 bool 返回值的 switch

php - 如何实现 Laravel 4 分部 View - 将数据绑定(bind)到分部 View

PHPmailer setfrom 错误

javascript - 根据另一个填充 1 个表单域

php - 如何使用复选框在 PHP 中进行多个查询?

javascript - 为什么禁用 javascript 后表单仍会提交?

php - 除指定字符外,所有字符均替换为 *

php - <td> 不填充所有动态表 HTML PHP MySQL

jQuery 匹配模式

javascript - 通过javascript访问对象键值