Ich versuche, ein HTML-POST-ed-Formular zu erstellen, das zwei Felder hat - ein Datei-Upload und ein Textfeld. Da das Formular einen Typ multipart/form-data für den Datei-Upload hat, kann ich das Textfeld nicht über die normale PHP $ _POST-Variable erreichen. Wie komme ich also mit PHP in das Textfeld?PHP - Analyse von mehrteiligen Formulardaten
Wie pro angefordert, hier ist ein Code, im Grunde direkt von Andrew genommen:
<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>";
?>
, dass die gesamte Testdatei ist. Wenn ich den enctype entferne, kann ich die POST-ed Daten bekommen, aber natürlich nicht die Datei. Mit dem Enctype als multipart/form-data kann ich die Datei holen, aber nichts aus den POST-ed Daten.
Hier ist der Ausgang mit dem enctype:
array(5) {
["name"]=>
string(34) "testing.png"
["type"]=>
string(0) ""
["tmp_name"]=>
string(0) ""
["error"]=>
int(1)
["size"]=>
int(0)
}
Ohne:
testing
NULL
gleiche genaue Eingabe beide Male.
Wie Jonathan und Andrew gesagt haben, sollte $ _POST funktionieren, vorausgesetzt, Sie haben Post benutzt, um Ihr Formular zu posten (und das ist eine gute Annahme, weil Sie Dateien posten müssen). Kannst du also etwas Code posten? Stellen Sie sicher, dass das name-Attribut im html-Textfeld festgelegt ist und dass Sie den text frield-Wert verwenden. – alanquillin