小编Rap*_*eek的帖子

php http请求内容原始数据enctype = multipart/form-data

我目前正在编写两个类:HttpRequest和HttpResponse.我想编写自己的HTTP类.

我在使用带有enctype = multipart/form-data的表单的POST方法遇到问题:我无法获取请求内容.

经过长时间的研究和搜索,我发现我必须file_get_contents("php://input")用来获取请求内容.当我测试它时,我有一个空字符串var_dump(file_get_contents("php://input")).

我无法访问server/php配置.

我正在使用以下代码进行测试:

<?php
$input = file_get_contents('php://input');
var_dump($input);
?>
<html>
<body>
<form action="./" method="post" enctype="multipart/form-data">
    <label for="file">Filename:</label>
    <input type="text" name="namen" id="nameid" /><br/>
    <input type="file" name="file" id="file"><br>
    <input type="file" name="file2" id="file2"><br>
    <input type="submit" name="submit" value="Submit">
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

提交后,我得到了这个结果:string(0) "".很明显,因为php://输入不能与enctype ="multipart/form-data"形式一起使用.

我希望有类似的东西:

-----------------------------19972703421793859182225487886
Content-Disposition: form-data; name="namen"

ds
-----------------------------19972703421793859182225487886
Content-Disposition: form-data; name="file"; filename="toto.xml"
Content-Type: text/xml

<?xml version="1.0" encoding="UTF-8"?>
<Toto></Toto>

-----------------------------19972703421793859182225487886
Content-Disposition: form-data; name="file2"; filename=""
Content-Type: application/octet-stream


-----------------------------19972703421793859182225487886
Content-Disposition: form-data; name="submit"

Submit
-----------------------------19972703421793859182225487886-- …
Run Code Online (Sandbox Code Playgroud)

php forms http request

7
推荐指数
2
解决办法
1万
查看次数

标签 统计

forms ×1

http ×1

php ×1

request ×1