我正在尝试调整上传脚本以适应000webhost。我不断收到有关目标文件夹不存在的错误。这就是我所拥有的:
define('DESTINATION_FOLDER','/uploads/');
我也试过
/public_html/uploads/
和
/subdomain/domain/com/uploads/
在示例中,我看到人们正在使用/ www /但我不知道它在哪里。
在这种情况下使用的正确语法是什么?
答案 0 :(得分:4)
试试这个:
define('DESTINATION_FOLDER',$_SERVER['DOCUMENT_ROOT'].'/uploads/');
如果平台独立性对您很重要,请考虑使用PHP常量DIRECTORY_SEPARATOR:
define('DESTINATION_FOLDER',$_SERVER['DOCUMENT_ROOT'].DIRECTORY_SEPARATOR.
'uploads'.DIRECTORY_SEPARATOR);
http://php.net/manual/en/dir.constants.php
修改强>:
在文档根目录下存储上载可能存在安全风险。除非您希望Web服务器可以直接访问这些文件,否则您应该考虑将它们存储在网站空间中的文档根目录之外。如果您在主持人的“public_html”文件夹旁边创建了一个名为“uploads”的文件夹,则可以像这样访问它:
define('DESTINATION_FOLDER',$_SERVER['DOCUMENT_ROOT'].DIRECTORY_SEPARATOR.
'..'.DIRECTORY_SEPARATOR. // (up one level)
'uploads'.DIRECTORY_SEPARATOR);
或者只是将绝对路径(以/
引导)直接指定给文件夹。