【问题标题】:Fatal error: require_once() [function.require]: Failed opening required '__DIR__ [closed]致命错误:require_once() [function.require]:打开失败需要'__DIR__ [关闭]
【发布时间】:2013-05-11 10:38:47
【问题描述】:

我是 PHP 和 Android 新手。我试图在现有线程上找到解决方案,但没有成功。

我正在开发一个需要连接到外部数据库的 android 项目。我已经设法使用 WAMP 创建了一个外部数据库,它在 localhost 上运行良好。

现在我正在尝试使外部数据库联机并且我正在使用 000webhost.com。 我已经通过 000webhost.com 服务创建了我的数据库副本,并尝试通过我的脚本和 000webhost.com 提供给我的凭据连接到数据库。 (DB_HOST、DB_USER 等...)

我有一个应该显示所有现有用户的脚本。即它应该连接到数据库并在网络浏览器中显示来自数据库的所有信息(我通过网络连接到http://www.mywampserver.netau.net/android_connect/get_all_users_placedescoverer.php),但它失败并出现以下错误:

Warning: require_once(__DIR__/android_connect/db_connect_placedescoverer.php)
[function.require-once]: failed to open stream: No such file or directory in 
/home/a2056935/public_html/android_connect/get_all_users_placedescoverer.php
on line 12

在第 12 行的 get_all_users_placedescoverer.php 中,我有:

require_once __DIR__ . '/android_connect/db_connect_placedescoverer.php';

并且db_connect_placedescoverer.phpet_all_users_placedescoverer.php 存在于同一文件夹中。

我也试过用:

require_once(realpath(dirname(__FILE__)'/android_connect/db_connect_placedescoverer.php'));

然后我得到:

警告:require_once() [function.require-once]:文件名不能为空 /home/a2056935/public_html/android_connect/get_all_users_placedescoverer.php 第 13 行

我们将不胜感激。

【问题讨论】:

  • 该常量需要更高的 PHP 版本。字符串连接需要字符串连接运算符。

标签: php android


【解决方案1】:

问题是PHP版本

魔术常量__DIR__ 仅在 PHP v.5.3.0 中可用,如documentation 中所述

000webhost 可能使用的是较低版本。

在网络服务器中创建一个代码为phpinfo();的文件并检查php版本。

要修复脚本以在 5.3.0 之前的 php 版本中使用,请将第 12 行更改为:

$dir = dirname(__FILE__);

require_once $dir . '/android_connect/db_connect_placedescoverer.php';

编辑:

您确定将文件放在正确的位置吗?该文件应放在名为 android_connect 的目录中。

尝试使用调用 require 的文件的相对路径。

如果您的 index.php(我假设 index.php 是需要其他 php 文件的文件)放在 public_html 目录中,那么请尝试使用相对路径

require_once 'android_connect/db_connect_placedescoverer.php';

如果它们在同一个文件夹中,那么您可以使用文件名:

require_once 'db_connect_placedescoverer.php';

【讨论】:

  • 非常感谢您的快速响应,但它不起作用我仍然收到相同的错误:警告:require_once(/home/a2056935/public_html/android_connect/android_connect/db_connect_placedescoverer.php) [function.需要一次]:无法打开流:第 13 行的 /home/a2056935/public_html/android_connect/get_all_users_placedescoverer.php 中没有这样的文件或目录
  • 检查我编辑的答案
  • 抱歉,它成功了!!!我改变了: $dir = dirname(FILE);需要一次 $dir 。 '/db_config_placedescoverer.php';
猜你喜欢
  • 2011-08-04
  • 1970-01-01
  • 2014-06-12
  • 2016-07-06
  • 2014-10-21
  • 2017-07-19
  • 2014-05-09
相关资源
最近更新 更多