0

我有一个 php 表单,其中上传了多个图像。根据当前文件夹检查文件名,如果匹配则停止,这是发生的事情的简化版本:

if (file_exists("../uploads/" . $_FILES["file"]["name"][$i])){
    echo "sorry that one already exists, rename";
}else{
    move_uploaded_file($_FILES["file"]["tmp_name"][$i],"" . '../uploads/'.$_FILES["file"]["name"][$i]);
    echo $_FILES["file"]["name"][$i]." was uploaded";
}

我想问“你想覆盖现有文件”吗?如果他们同意,则继续执行 move_uploaded_file()。这可能是一个弹出窗口或其他什么。做这个的最好方式是什么?

4

2 回答 2

1

如果您正在读取,$_FILES则数据已经发布到服务器。从技术上讲,可以向用户返回一个错误页面,要求他们确认覆盖,但是在将实际文件数据提交到服务器之前,通过 ajax 检查文件名/路径的存在会更加优雅和高效。

于 2011-06-08T19:06:36.467 回答
1

您问是否可以在不将文件上传到服务器的情况下从客户端执行此操作 - 答案是 - 没那么容易。

您可以做到的唯一方法是创建 AJAX 处理程序,您将向其传递图像文件名并在文件存在时返回答案,然后相应地显示弹出窗口。

于 2011-06-08T19:06:50.877 回答