微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php包含错误而不是findind路径

我有这个小代码,实际上是一个登录脚本,它检查寄存器是否打开,并在登录按钮后显示

   <?PHP
include("../inc/db.PHP"); 
if(isset($_POST['user']) && isset($_POST['pass']))
{
    $password = $_POST['pass'];
    $username = $_POST['user'];

    $sql = "SELECT * FROM `users` WHERE `user` = '".$username."' AND `password` = '".$password."'";
    $rez = $pdo->query($sql);   
    if($rez->fetchColumn()  > 0)
    {
        ...

    }
    else {echo '<p align="center">...</p>';}
    }
    else { echo '<p align="center">...</p>'; }
    }
    ?>
    <table width="300" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
    <tr>
    <form name="form1" method="post" action="login">
    <td>
    <table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
    <tr>
    <td colspan="3"><strong>Member Login </strong></td>
    </tr>
    <tr>
    <td width="78">Username</td>
    <td width="6">:</td>
    <td width="294"><input name="user" type="text" id="user"></td>
    </tr>
    <tr>
    <td>Password</td>
    <td>:</td>
    <td><input name="pass" type="password" id="pass"></td>
    </tr>
    <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td><input type="submit" name="Submit" value="Login"></td>
    </tr>
    <?PHP $sql = "SELECT setare FROM setari WHERE nume_setare = 'OPEN_REG'";
    $openreg = $pdo->query($sql)->fetch();
    if($openreg['setare'] == 1)
    {
     ?>
    <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td><a href="register">Inregistrare</a></td>
    </tr><?PHP } ?>
    </table>
    </td>
    </form>
    </tr>
    </table>

我的问题是这一行:

include(“../inc/db.PHP”);
Warning: include(E:/wamp/www//inc/db.PHP): Failed to open stream: No such file or directory in E:\wamp\www\proiect1-test\scripts\login.PHP on line 3
Warning: include(): Failed opening ‘../inc/db.PHP’ for inclusion (include_path=’.;C:\PHP\pear’) in E:\wamp\www\proiect1-test\scripts\login.PHP on line 3

而我无法弄清楚我错在哪里.路径是正确的,如果我点击登录按钮,它就可以工作.如果我点击了用户名和密码的inccorect组合的登录按钮,警告就会消失.但是,当我第一次打开它时,它不包括在内.此登录文件包含在站点的索引中.

解决方法:

您到该文件的路径显然是不正确的.当您使用文件的相对路径然后开始将文件放在不同的目录中时,通常会发生这种情况.您应该使用该文件的完整系统路径来避免此问题:

include("/path/from/root/to/inc/db.PHP"); 

常见的事情是定义一个变量或常量,用于定义Web文件的根路径.这样,如果它发生变化(即你更换主机),你只需要在一个地方更改它.

在您的配置文件中:

define('ROOT_PATH', '/path/from/root/to/');

在你的PHP文件中;

include(ROOT_PATH . "inc/db.PHP"); 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐