1

我有几个文件夹:

  • localhost/mysite/inlcudes
  • localhost/mysite/public

...内部包括几个文件:

  • database.php
  • config.php

在里面database.php,我创建了一个类来处理所有连接的东西。我创建了一个数据库对象。test.php我在同一个文件夹中测试了连接和查询。一切正常,但是当我尝试测试database.php时,public/index.php它告诉我变量未设置。

代码:

<?php
include ('../../includes/database.php');

if (isset($database)) {
   echo"working";
} else {
   echo "not";
}

结果:

not
4

3 回答 3

1

你试过include_once('your_path')代替include('your_path')吗?

于 2013-09-14T20:13:15.030 回答
0

好吧,如果您的数据库文件位置是“localhost/mysite/inlcudes/database.php”,而您的索引文件位置是“localhost/mysite/public/index.php”,那么您似乎只需要后退一个目录即可。

所以包含函数应该是这样的

include("../includes/database.php");
于 2013-09-14T20:03:34.063 回答
0

您的包含文件可能没有正确发生...您可以尝试使用 realpath 调试您的“../..”路径。

这样开始

var_dump(realpath('../'));
var_dump(realpath('../../'));
var_dump(realpath('../../includes'));
var_dump(realpath('../../includes/database.php'));

如果没有返回任何内容,则意味着该路径不存在...

于 2013-09-14T20:03:58.713 回答