【问题标题】:警告:包含(../includes/db.php):无法打开流:
【发布时间】:2017-05-16 06:39:36
【问题描述】:

这是我现在面临的问题,你能建议我摆脱这个问题吗?在我没有遇到这个问题之前它工作得很好现在我不知道发生了什么路径是正确的。任何人请解决它...

警告:包含(../includes/db.php):无法打开流:没有这样 文件或目录在 C:\xampp\htdocs\portfolio\admin\includes\admin_header.php 在第 3 行 警告:include():未能打开“../includes/db.php”以供包含 (include_path='C:\xampp\php\PEAR') 在 C:\xampp\htdocs\portfolio\admin\includes\admin_header.php 在第 3 行 警告:include(functions.php):无法打开流:没有这样的文件 或目录 C:\xampp\htdocs\portfolio\admin\includes\admin_header.php 在第 4 行 警告:include():未能打开“functions.php”以包含在内 (include_path='C:\xampp\php\PEAR') 在 C:\xampp\htdocs\portfolio\admin\includes\admin_header.php 在第 4 行

【问题讨论】:

  • 路径可能已经改变
  • 欢迎来到 Stack Overflow!看来您的代码有问题。但是,除非我们有 code or information that can reproduce the problem,否则我们无能为力。否则,我们只是在盲目猜测。
  • 你的 db 文件放在包含文件夹或投资组合文件夹中的位置
  • db 文件在投资组合包含文件夹中
  • Aslam Patel C:\xampp\htdocs\portfolio\includes

标签: php


【解决方案1】:

万一这对其他人有帮助,我遇到了这个问题,然后意识到 WAMP 已经崩溃(或者我可能没有启动它)。无论哪种方式,WAMP 都没有在我的本地机器上运行,所以...... doh。

这应该是您检查的第一件事(与“是否已插入?”一致)。

【讨论】:

    【解决方案2】:

    这与您编写相对路径的方式有关。 我假设当您的应用程序引用 admin_header.php 时出现此错误,它有一个 include() 来尝试调用 {document_root}/porfolio/admin/includes/db.php。我有根据的猜测是它包含您对数据库的连接字符串的实现。

    正确的相对路径应该是:include('../../includes/db.php');

    此链接应该让您更好地了解相对路径(以及一般路径)。 https://phpdelusions.net/articles/paths

    【讨论】:

      【解决方案3】:

      有点晚了,但我只是回复那些可能会遇到同样错误的人。

      假设您将 header.php 存储在您的包含目录中并且它不在您的 index.php 旁边,所以当您将 bd.php 包含到您的 header.php 中,然后将您的 header.php 包含到您的 index.php 中时,请注意apache 知道 index.php direcotroy 作为你的密码,所以如果你已经根据 header.php 目录为 db.php 设置了相对路径,它不会起作用。你可以使用绝对路径来避免这种情况,或者只是根据相对位置设置相对路径来自 index.php 的 db.php

      【讨论】:

        【解决方案4】:

        我之前也遇到过同样的问题,但结果是我忘记了在 XAMPP 控制面板上启动 MySQL。我确定我迟到了答案,但希望它可以帮助以后的人。

        【讨论】:

          【解决方案5】:

          尝试删除相对路径 ("../") 例如将include(../includes/db.php) 更改为include(includes/db.php)

          【讨论】:

            【解决方案6】:

            计算机不会说谎,如果它说它看不到它,那么它就不存在

            确保你让它看起来在正确的位置,如果我建议你手动做也可以确认

            我还怀疑这是使用相对路径引起的问题。考虑到您当前从哪里调用文件,请确保路径正确

            例如,从 index.php 调用 include(../includes/db.php) 不同于从 admin/index.php 调用它

            编辑

            如果您从 C:\xampp\htdocs\portfolio\admin\includes\admin_header.php 调用到 C:\xampp\htdocs\portfolio\includes

            然后

            include(../../includes/db.php);
            

            是正确使用的语法

            希望对你有帮助

            【讨论】:

            • 实际上路径只有在它工作之前是正确的,现在只有我面临这个问题,请参阅路径 C:\xampp\htdocs\portfolio\includes
            • 这个问题出现了。警告:include(./admin/functions.php):无法打开流:C:\xampp\htdocs\portfolio\includes\db 中没有这样的文件或目录。第 2 行的 php 警告:include(): 未能在 C:\xampp\htdocs\portfolio\includes\db 中打开 './admin/functions.php' 以包含 (include_path='C:\xampp\php\PEAR')第 2 行的 .php 警告:include():无法在 C:\xampp\htdocs\portfolio\admin\includes\admin_header 中打开 'functions.php' 以包含 (include_path='C:\xampp\php\PEAR')。第 3 行的 php @funsho olaniyi
            • 这是进度,将 include(./admin/functions.php): 更改为 include(admin/functions.php): 并确保存在 C:\xampp\htdocs\portfolio\admin\函数.php文件
            • 我得到了解决方案实际上我已经将functions.php文件路径添加到我删除的db.php文件中,然后它现在可以正常工作了!!!如果我有任何其他问题,我会在这里问。谢谢@Funsho Olaniyi
            【解决方案7】:

            看起来,你试图包含在你的 php 代码中的文件不在那个地方。尝试将所有包含文件保存在特定文件夹中,然后在您想调用它的任何地方调用它。 假设您的 index.php 文件位于 xampp/htdocs/your_folder_name/index.php 中,然后只需在文件夹名称 your_folder_name/your_new_folder 中创建一个您想要命名的文件夹名称并保存您想要包含的所有文件,就好像您正在保存 db.php,然后在页面顶部将其称为:

            <?php include("your_new_folder/db.php");?>
            

            【讨论】:

            • 实际上路径只有在它工作之前是正确的,现在只有我面临这个问题,请参阅路径 C:\xampp\htdocs\portfolio\includes
            【解决方案8】:

            根据发布的错误,似乎 include_path 指的是路径 (include_path='C:\xampp\php\PEAR'),而 PHP 文件包含在其他文件夹中。

            您需要更新 include_path 变量以指向正确的位置。您可以在 php.ini 文件中找到它。

            【讨论】:

            • 实际上路径只有在它工作之前是正确的,现在只有我面临这个问题,请参阅路径 C:\xampp\htdocs\portfolio\includes
            • php.ini中include_path的值是多少?
            • 在 php.ini 文件中显示的是: UNIX: "/path1:/path2" include_path=C:\xampp\php\PEAR ; ; Windows: "\path1;\path2" ;include_path = ".;c:\php\includes" ; ; PHP 对 include_path 的默认设置是 ".;/path/to/php/pear" ; php.net/include-path@kalyan Srinivas Limkar
            • 您可以在 PHP 代码中设置 include_path 值。试试这个:
            • 您可以在 PHP 代码中设置 include_path 值。试试这个:
            猜你喜欢
            • 2018-11-08
            • 1970-01-01
            • 1970-01-01
            • 2011-07-16
            • 1970-01-01
            • 1970-01-01
            • 2017-06-04
            • 2014-01-04
            相关资源
            最近更新 更多