我想在 index.php 上选择一个上传文件。 “上传”按钮会显示 check.php 。如果文件已存在,则会出现“覆盖”按钮。覆盖按钮会导致 overwrite.php 在那里,我想再次获得我的价值,最后将文件上传到我的文件夹中。
的index.php
<form action="check.php" method="post" enctype="multipart/form-data">
<input type="file" name="file">
<button type="submit" value="upload">Upload</button>
</form>
check.php
if(isset($_FILES['file'])) {
$file = $_FILES['file'];
$target_file = 'files/'.basename($_FILES["file"]["name"]);
if (file_exists($target_file)) {
echo "File already exist";
echo "<form action='overwrite.php' method='post'>
<input type='hidden' name='newfile' value='$upload'>
<button type='submit'> Overwrite</button>
</form>";
}
}
overwrite.php
$upload = $_POST["newfile"];
if(isset($_FILES['file'])) {
$file = $_FILES['file'];
$target_file = 'files/'.basename($_FILES["file"]["name"]);
$filename = $target_file;
move_uploaded_file($upload, $target_file);
echo "The file is overwritten";
}
必定会有一些错误,因为文件没有被覆盖。
答案 0 :(得分:0)
如果它已经检查文件是否存在,并且所有这些都是正确的,您可以尝试在上传之前删除旧图像。您可以使用PHP的unlink函数来完成此操作。
unlink($target_file);