我正在爲我的辦公室構建一個簡單的上傳門戶。我已經成功地編碼它將上傳的項目傳遞到名爲/ uploads的文件夾中,但是我想添加一個下拉列表以在多個子文件夾之間進行選擇,以便人們可以更好地組織那些內容。PHP文件上傳 - 下拉子文件夾選擇
這是我的HTML
<html>
<body>
<form action="upload.php" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file"><br>
<select name="Folder">
<option value="OurPhoto">Our Photos</option>
<option value="StockPhoto">Stock Photos</option>
<option value="Video">Videos</option>
<option value="Document">Documents</option>
<option value="Other">Other</option>
</select>
<input type="submit" name="submit" value="Submit">
</form>
</body>
</html>
這是我的PHP爲upload.php的
if ($_FILES["file"]["error"] > 0) {
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
}
else {
echo "Upload: " . $_FILES["file"]["name"] . "<br>";
echo "Type: " . $_FILES["file"]["type"] . "<br>";
echo "Size: " . ($_FILES["file"]["size"]/1024) . " kB<br>";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";
if (file_exists("upload/" . $_FILES["file"]["name"])) {
echo $_FILES["file"]["name"] . " already exists. ";
}
else {
move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}
}
我的子文件夾命名爲MCPhoto,圖像庫內,視頻,文檔和其他。 我的PHP知識有點弱,所以我不知道該從哪裏去。
做**不**使用此代碼。通過允許您的用戶隨時隨地在您的服務器上隨意塗鴉文件,並選擇他們的名字,您就可以打開一扇完整的遠程服務器折中之門。 –
然後你會有什麼建議?我有目錄密碼保護,所以爲了甚至訪問它,你需要通過cpanel設置的登錄/ psw,以及在access.php – Artsen
中設置的密碼至少將HELL從'['名稱']參數。這完全由用戶控制,並且可以包含路徑信息。你至少要檢查重複上傳,但考慮如果'['name'] =/etc/passwd'或者'c:\ windows \ system32 \ ntoskrnl.exe'會發生什麼情況。你還應該限制允許的文件類型,而不是**將它們放在可以通過直接url訪問的地方。 –