我不擅長php編碼,有人可以幫我用這個php上傳代碼。php文件上傳不會取代舊的
我有PHP文件上傳文件到服務器的作品完美,但我的問題是它會取代舊文件。我不想替換舊的,例如,如果文件存在上傳文件重命名(文件到文件_1)。
<?php
$target_path1 = "uploads/";
/* Add the original filename to our target path. Result is "uploads/filename.extension" */
$target_path1 = $target_path1 . basename($_FILES['uploaded_file']['name']);
if (move_uploaded_file($_FILES['uploaded_file']['tmp_name'], $target_path1)) {
echo "The first file " . basename($_FILES['uploaded_file']['name']) . " has been uploaded.";
} else {
echo "There was an error uploading the file, please try again!";
echo "filename: " . basename($_FILES['uploaded_file']['name']);
echo "target_path: " . $target_path1;
}
?>
我會感謝您的幫助......
你應該肯定**驗證你的用戶輸入。這段代碼看起來像任何人都可以上傳一個'.php'文件,通過瀏覽器訪問它並通過運行任意命令來執行它並危害你的服務器。 –
上傳前請檢查文件是否已存在。將計數器值附加到新文件的文件名。 – RST