PHP错误 - 已经定义了常量DB_HOST?

时间:2011-11-19 23:11:10

标签: php

我正在完成一项家庭作业,我们正在制作一个非常基本的CMS。我们要填写一个包含标题,正文,永久链接的表格。然后,CMS将获取永久链接,并将其添加到主导航栏。在导航栏上单击该永久链接时,将显示标题,内容,创建的日期戳和修改的日期戳。 我有这个东西工作,唯一的问题是当我点击导航链接时,我有这些错误:

注意:在第2行的C:\ Program Files \ xampp \ htdocs \ php \ assignment_6 \ config.php中已经定义了常量DB_HOST

注意:在第3行的C:\ Program Files \ xampp \ htdocs \ php \ assignment_6 \ config.php中已经定义了常量DB_USER

注意:在第4行的C:\ Program Files \ xampp \ htdocs \ php \ assignment_6 \ config.php中已经定义了常量DB_PASS

注意:常量DB_NAME已在第5行的C:\ Program Files \ xampp \ htdocs \ php \ assignment_6 \ config.php中定义

我有一个用于建立数据库连接的config.php文件:

<?php
     define('DB_HOST','******');
     define('DB_USER','******');
     define('DB_PASS','******');
     define('DB_NAME','******');  

    $cms_db = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);

         if(!$cms_db){
          echo"Could not connect: ".mysql_error();
     } 
?>

以下是我的文件中调用config.php文件的代码,该文件导致错误:

<?php
   require('config.php');
   $perm = $_GET['p'];
   $query = "SELECT * FROM cms WHERE permalink = '$perm'";
   $result = $cms_db->query($query);
   $row = $result->fetch_assoc();
   $page_title = $perm;
   require('header.php');
?>
<h1><?=$row['title'];?></h1>
<hr/><br/>
<p class="para"><?=$row['content']?></p>

<?php require('footer.php');?>

少量简单代码,但问题是什么?这不是一个致命的错误,但男人,这很烦人。

3 个答案:

答案 0 :(得分:12)

您可能多次包含config.php。检查所有脚本并找到这种双重性。您可以使用require_once()代替require()来阻止此操作。

答案 1 :(得分:1)

header.php或footer.php是否包含config.php?

如果是这样就是你的问题。

答案 2 :(得分:-2)

header.php或footer.php还是leftMenuBar是否包含config.php?

如果是这样,那就是您的问题。

只需删除(包括config.php)行即可。.

如果您不想破坏功能 只需添加以下行即可。 error_reporting(0);

include config.php行之后!