【发布时间】:2016-07-13 11:34:19
【问题描述】:
我的网站不处理带有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 上工作,但如果我使用它们的原生 (PHP 5.5),它可以正常工作。
【问题讨论】:
-
您是否尝试添加 print_r($_POST);看看你是否收到任何帖子?
-
是的,我有,但它是空的。
-
您需要提交您的
-
已更新代码。正如我所说,它可能不是代码。
-
@Olof,您的操作属性为空。当您提交时,会加载相同的页面。如果此页面是 index.php,则 $_POST 变量可能会丢失。例如:http:domain.com/ 加载 index.php 但有时(.htaccess 或服务器配置)在重定向时 $_POST 会丢失。尝试更改您的操作属性并明确指定您的文件,例如 action="yourCurrentScript.php"