0

我通常使用这一行从当前文件夹中导入文件,它在我的本地主机服务器上工作正常

require("../DataBase.class.php"); 

但是当我在我的网站上上传脚本时,我收到了这个警告

警告:include(../DataBase.class.php) [function.include]:打开流失败:没有这样的文件或目录

4

3 回答 3

3

安全模式不喜欢“../”。所以你应该总是使用类似的东西

require_once realpath(dirname(__FILE__) . '/..') . '/file.php';
于 2009-09-13T02:17:39.783 回答
2

可能发生的情况是您在服务器上的 php.ini 中的 include_path 设置与本地安装的 PHP/Apache 不同。除此之外,请记住 ../ 不指向文件所在的当前目录,它指向您所在的当前目录的父目录。我的建议是找出完整路径您的文档根目录,然后包括您的文件,如下所示:

<?php

$full_path = "/var/www/htdocs"; // this should be your website's full path
require( $full_path . "/DataBase.class.php" );

?>
于 2009-09-13T02:14:57.387 回答
0

您正在父目录中查找该文件。如果您希望它在当前目录中使用:

require 'Database.class.php';

也许在您的本地 Web 服务器上,您的父目录中有一个副本,出于某种原因,该副本在您的远程服务器上不存在。

于 2009-09-13T02:13:36.073 回答