私はhtmlに次のフォームを持っています:
<form id="signguestbook" class="form-horizontal" action="upload.php" method="post" enctype="multipart/form-data">
<div class="control-group">
<label class="control-label" for="inputName">Uw naam</label>
<div class="controls"><input type="text" id="inputName" placeholder="Uw naam"></div>
</div>
<div class="control-group">
<label class="control-label" for="inputEmail">Email</label>
<div class="controls"><input type="text" id="inputEmail" placeholder="Email"><span class="maildisclaimer">(uw e-mailadres zal niet op onze site verschijnen)</span></div>
</div>
<div class="control-group">
<label class="control-label" for="inputText">Uw ervaring:</label>
<div class="controls"><textarea rows="5" cols="50" id="inputText" placeholder="Geef hier mee hoe u uw verblijf ervaren heeft!"></textarea></div>
</div>
<div class="control-group">
<label class="control-label" for="inputPhoto">Foto:</label>
<div class="controls"><input type="file" name="photo" id="photo" /></div>
</div>
<div class="control-group">
<div class="controls"><input type="submit" class="btn" value="Versturen" /></div>
</div>
</form>
twitter ブートストラップを使用すると、そのレイアウトで問題ないように見えます。
次に、次のテスト コードを含む upload.php があります。
<?php
if ($_POST["inputName"]) {
echo "Naam: " . $_POST["inputName"] . "<br />";
}
if ($_POST["inputEmail"]) {
echo "Mail: " . $_POST["inputEmail"] . "<br />";
}
if ($_POST["inputText"]) {
echo "Text: " . $_POST["inputText"] . "<br />";
}
// photo is the name of our file input field
if ($_FILES['photo']['error'] > 0) {
echo "Error: " . $_FILES['photo']['error'] . "<br />";
} else {
echo "File name: " . $_FILES['photo']['name'] . "<br />";
echo "File type: " . $_FILES['photo']['type'] . "<br />";
echo "File size: " . ($_FILES['photo']['size'] / 1024) . " Kb<br />";
echo "Temp path: " . $_FILES['photo']['tmp_name'];
}
?>
ここでエラーが発生するとは思っていませんでしたが、次の結果が得られました。
Notice: Undefined index: inputName in /var/www/greze/upload.php on line 3
Notice: Undefined index: inputEmail in /var/www/greze/upload.php on line 6
Notice: Undefined index: inputText in /var/www/greze/upload.php on line 9
File name: 3479331713.pdf
File type: application/pdf
File size: 230.8388671875 Kb
Temp path: /tmp/phpJ4z0FV
ファイルは認識されますが、$_POST 変数は認識されません。var_dump($_POST) を実行すると、空の配列になります。したがって、それは私の形式の何かである必要がありますが、投稿するように設定しましたが、enctype は正しいです (思い出したように)。
私のコーディングがオフになっていて、しばらく経っていることを認めなければなりません。
前もって感謝します!!