php http Anfrage Inhalt Rohdaten enctype = mehrteilig / Formulardaten [duplizieren]

Diese Frage hat hier bereits eine Antwort:

Get raw post data 3 Antworten

Ich codiere derzeit zwei Klassen: HttpRequest und HttpResponse. Ich möchte meine eigenen HTTP-Klassen codieren.

Ich habe ein Problem mit einer POST-Methode, die ein Formular mit enctype = multipart / form-data verwendet: Ich kann den Anforderungsinhalt nicht abrufen.

Nach langem Nachforschen und Suchen habe ich festgestellt, dass ich @ verwenden musfile_get_contents("php://input"), um den Anforderungsinhalt abzurufen. Wenn ich es teste, habe ich eine leere Zeichenfolgevar_dump(file_get_contents("php://input")).

Ich habe keinen Zugriff auf die Server / PHP-Konfiguration.

Ich teste mit folgendem Code:

<?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>

Und nach dem Absenden habe ich folgendes Ergebnis:string(0) "". Es ist offensichtlich, weil die Eingabe von PHP: // nicht mit Formularen vom Typ enctype = ”multipart / form-data” funktioniert.

Ich hätte gerne etwas wie:

-----------------------------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--

Ist das für jede Anforderungsmethode möglich? Oder liege ich falsch

Antworten auf die Frage(2)

Ihre Antwort auf die Frage