<input type = "file" name = "mImage[]">
<input type = "file" name = "mImage[]">
<input type = "file" name = "mImage[]">
<input type = "file" name = "mImage[]">
if($_FILES['mImage']['size'] == 0){ echo "File not uploaded"}
if(file_exist($dir . $_FILES['mImage']['name'])){ echo "File already exist"}
我可以上传四张图像,但假装是用户上传第二张文件,但想上传一张,我的代码回显"File already exist"
.我使用了file_exist
功能。我对我的代码的假设假设文件已经存在,第二次只上传一个文件(并且目录中不存在一个文件(,它认为$_FILES['mImage']['name'] = "."
或".."
。如果是这种情况,那么我可以实现一个代码来忽略"."
或".."
。我需要帮助,为什么当我第二次上传一个文件时,我的代码认为该文件已经存在。
由于文件输入使用数组,因此 $_FILES['mImage'] 将是文件数组。试试这个:
if($_FILES['mImage'][0]['size'] == 0){ echo "File not uploaded"}
if(file_exist($dir . $_FILES['mImage'][0]['name'])){ echo "File already exist"}
您必须为每个文件重复此操作,或者使用类似foreach的循环遍历$_FILES['mImage']。