我已经在我的根目录(即我的教室文件夹)中编写了一个 index.php。这应该是我网站的唯一入口路径。
我的 index.php 的前几行是
索引.php
<?php
include_once $_SERVER['DOCUMENT_ROOT'].'/classroom/include/db.inc.php' ;
session_start();
define('BASE_URL', '/classroom/');
define('DIR_ROOT', dirname(__FILE__) . DIRECTORY_SEPARATOR);
define('DIR_HOME', DIR_ROOT . 'home' . DIRECTORY_SEPARATOR);
define('DIR_INCLUDE', DIR_ROOT . 'include' . DIRECTORY_SEPARATOR);
if(isset($_GET['name']) and $_GET['name'] == 'home' )
{
$url='';
$url= BASE_URL . 'home' . DIRECTORY_SEPARATOR;
header("Location: $url");
exit();
}
现在在主目录中,当我尝试使用“DIR_HOME”或“DIR_INCLUDE”时,它将加载 home.html.php.now。它显示错误消息
( ! ) 注意:使用未定义的常量 DIR_INCLUDE - 在第 17 行的 C:\wamp\www\classroom\home\home.html.php 中假定为“DIR_INCLUDE”
我给你在我的 home.html.php 中发生错误的部分
主页.html.php
<table width="100%" border="0" cellpadding="4px" >
<tr>
<td>
<table border="0" width="100%" cellpadding="0px" cellspacing="0px">
<tr>
<td class="top">
<?php include(DIR_INCLUDE . 'topper.html.php') ; ?>
</td>
</tr>
当我在我的 index.php 中包含 home.html.php 时,问题就解决了。但是它没有像 localhost/classroom/home 这样的 url,它始终保持为 localhost/classroom。
问题:为什么会出现这个错误?如何通过保留 localhost/classroom/home 之类的 url 来解决它
编辑:我认为存在一些误解。我的问题是如何解决问题,同时它将 url 保持为 localhost/clasroom/home ......如果我在每个脚本中包含所有 dir 定义,那么我也会以同样的方式需要在每个脚本中包含 session_start() ..我的问题是,如果我这样做,它是否会保留单入口路径概念。因为我想维护单入口路径