そのため、ユーザーが任意の doc または docx フォルダーをアップロードできるファイル アップロード部分が Web サイトにあります。私のhtmlコードは次のとおりです。
<form action="upload_file.php" method="post" enctype="multipart/form-data">
Select a file: <input type="file" name="upload">
<input type="submit">
そして、upload_file.php のコードは次のとおりです。
<?php
session_start();
$allowedExts = array("doc", "docx");
$extension = end(explode(".", $_FILES["upload"]["name"]));
if (($_FILES["upload"]["size"] < 200000)
&& in_array($extension, $allowedExts)) {
if ($_FILES["upload"]["error"] > 0)
{
echo "Return Code: " . $_FILES["upload"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["upload"]["name"] . "<br />";
echo "Type: " . $_FILES["upload"]["type"] . "<br />";
echo "Size: " . ($_FILES["upload"]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES["upload"]["tmp_name"] . "<br />";
if (file_exists("Proposals/".$_SESSION["FirstName"] ."/" . $_FILES["upload"]["name"]))
{
echo $_FILES["upload"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["upload"]["tmp_name"],
"Proposals/". $_SESSION["FirstName"] ."/". $_FILES["upload"]["name"]);
echo "Stored in: " . "Proposals/". $_SESSION["FirstName"] ."/". $_FILES["upload"]["name"];
}
}
} else {
echo "Invalid file";
}
?>
ただし、成功メッセージで返信されても、これは何もアップロードしません。ディレクトリを作成できないためだと思います。上記のコードに何か問題がありますか、それともディレクトリを作成するためにコードを追加する必要がありますか? ここで私のフォルダー構造がまったく役立つ場合: