我正在尝试组合一个 HTML POST 表单,该表单具有两个字段:文件上传和文本字段。由于表单具有用于文件上传的 multipart/form-data 类型,因此我无法通过正常的 PHP $_POST 变量获取文本字段。那么如何使用 PHP 获取表单中的文本字段呢?
根据要求,这里有一些代码,基本上直接来自安德鲁:
<html>
<body>
<form action="test2.php" method="post" enctype="multipart/form-data">
Name: <input type="text" name="imageName" />
Image: <input type="file" name="image" />
<input type="submit" value="submit" />
</form>
</body>
</html>
<?php
echo $_POST['imageName'];
echo "<pre>";
echo var_dump($_FILES['image']);
echo "</pre>";
?>
这就是整个测试文件。如果我删除 enctype,我可以获取 POST 数据,但当然不能获取文件。使用 enctype 作为 multipart/form-data,我可以获取该文件,但无法从 POST 数据中获取任何内容。
这是带有 enctype 的输出:
array(5) {
["name"]=>
string(34) "testing.png"
["type"]=>
string(0) ""
["tmp_name"]=>
string(0) ""
["error"]=>
int(1)
["size"]=>
int(0)
}
Without:
testing
NULL
两次输入完全相同。
文件上传成功$_FILES http://php.net/manual/en/reserved.variables.files.php。其他一切都会过去$_POST http://php.net/manual/en/reserved.variables.post.php(当然假设你的 HTML 表单有它的method
属性设置为"post"
).
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)