修改一个教材上的网站源码使它能在www服务器子目录上正常运行

修改一个教材上的网站源码,使它能在www服务器子目录上正常运行。

该网站源码是教材《PHP+MySQL网站开发项目式教程》上带的网站源码。该源码是用 php + html 写的。该源码包含对mysql数据库进行操作的php代码。以前该网站源码只能在www服务器的根目录上正常运行,移到子目录后页面显示就不正常,点击页面的链接会转到放在根目录的网站页面。当时尝试修改源码,但是没有成功。最近花了两天时间,成功完成了该事情。方法是在workframe子目录里的一个文件里增加了一个常量SUBDIR ,以及修改源码里的app子目录下的view子目录和controler子目录里的部分源码。

在workframe子目录里的一个文件:Framework.class.php里增加一个SUBDIR常量,使用如下语句增加该常量:

      define('SUBDIR', 'bxg/'); //项目在服务器上的子目录名

其中DS是常量,源代码定义了DS:

      define('DS', DIRECTORY_SEPARATOR); //路径分隔符

然后修改app子目录下的home子目录和admin子目录里的部分文件。例如home子目录下的view子目录里的html文件里的以 "/ 或者 '/ 开头的链接地址,在这些链接地址里增加子目录常量,也就是增加 <?=SUBDIR?>。在home子目录下的controler子目录里也有小部分文件需要修改,主要redirect 后面的链接。增加.SUBDIR.。但是有的地方修改时需要注意成对单引号,这时要增加 '.SUBDIR.' 。修改后将该网站源码放在根目录下的 bxg/ 子目录下,它能正常运行。

不过在home\view\index子目录下有两个文件html,它们分别是index.html和list.html,每个文件里有一条类似语句,用增加<?=SUBDIR?>出错,修改了几个小时,都没有解决问题,因此只好改成增加bxg/。其中一条语句修改后如下所示:

    <a class="m-e-img-a" href="/<?=SUBDIR?>?c=course&id=<?=$v['id']?>" target="_blank"><img src="<?=$v['thumb']?"/bxg/public/upload/{$v['thumb']}":'/'.SUBDIR.'public/home/image/course.png'?>" alt="<?=$v['title']?>"></a>

这个问题在2024-3-24这一天解决了。解决的方法是去掉 src=“……" 这段字符的双引号,然后再修改一下就可以了。修改以后能正常使用的的语句如下所示:

        <a class="m-e-img-a" href="/<?=SUBDIR?>?c=course&id=<?=$v['id']?>"><img src=<?=$v['thumb']?'/'.SUBDIR."public/upload/{$v['thumb']}":'/'.SUBDIR.'public/home/image/course.png'?> alt="<?=$v['title']?>"></a>

该网站源码实现了网站的主要功能,但是该网站源码还有一些需要完善的地方。这些地方需要花时间去处理,要么增加功能,要么修改代码。

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值