在PHP脚本,调用是否include(),require(),fopen(),或它们的衍生物,例如include_once,require_once或者甚至move_uploaded_file(),一个经常遇到错误或警告:
无法打开流:没有这样的文件或目录.
快速找到问题根本原因的好过程是什么?
我已经完成了你的标准检查(是那里的目录,设置了足够的权限),我很确定我已经涵盖了你的标准愚蠢的人类技巧.这是失败的代码:
move_uploaded_file($_FILES['image1']['tmp_name'], "/public_html/flashsale/assets/img/products/T".$_FILES['image1']['name']);
Run Code Online (Sandbox Code Playgroud)
目录在那里 - 我从FileZilla复制了路径.我甚至在FileZilla和HostGator控制面板上的文件管理器中将权限设置为777.此代码生成两个警告:
消息:move_uploaded_file(/public_html/flashsale/assets/img/products/Tsirloin.jpg)[function.move-uploaded-file]:无法打开流:没有这样的文件或目录
消息:move_uploaded_file()[function.move-uploaded-file]:无法将'/ tmp/phpI5GZ3S'移动到'/public_html/flashsale/assets/img/products/Tsirloin.jpg'
以该顺序.因此,文件正在上传,目录存在并设置为777,我还能缺少什么?