我的代码一直说该文件夹不存在虽然它应该由mkdir函数检查..它创建文件夹但不会经历上传过程..并在找不到该文件夹的错误上显示。算法是否正确?请帮助..您的建议会有所帮助! :)
这是代码..
if(!(file_exists($target_path)))
{
if(!mkdir($target_path, 0777, TRUE))
{
die ("could not create the folder on mkdir");
}
//in this line the error occurs..printing what is below..//
die ("could not find folder on file exists");
}
else
{
umask($target_path);
...
}
答案 0 :(得分:2)
在文件上传过程中,move_uploaded_file()中的文件保存路径 功能可能会产生问题。我说的可能是因为你给出的代码对我来说不够清楚。 move_uploaded_file()的第二个参数是第一个参数是文件名的目标。请检查$ target_path的值,它可能会解决您的问题。谢谢。
答案 1 :(得分:1)
尝试..
if(file_exists($ target_path)&& is_dir($ target_path)){//其余代码... } 强>
而不是......
如果(!(file_exists($ target_path))){
}
希望这会为你做点什么......
...............................
还有一件事...... 我认为问题出在 if(!(file_exists($ target_path))){} Statement,
这应该...... 如果(!file_exists($ target_path)){} 强>
答案 2 :(得分:1)
file_exists()
例程需要完整的文件路径,如
/var/www/uploads/file1.c
所以
file_exists($target_path);
电话没问题。但第二次调用make目录,即
mkdir()
需要一个目录,而不是文件的路径,即它只需要/ var / www / upload部分。 所以你可以从路径名中删除basename并将它应用到mkdir函数()