如何将上传文件的值发送到另一个页面?

时间:2015-07-23 15:37:53

标签: php

我想在 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";

}

必定会有一些错误,因为文件没有被覆盖。

1 个答案:

答案 0 :(得分:0)

如果它已经检查文件是否存在,并且所有这些都是正确的,您可以尝试在上传之前删除旧图像。您可以使用PHP的unlink函数来完成此操作。

unlink($target_file);