关于phplib模板的html部分问题
如果将模板与php的文件分离开来后。模板部分单独的放到新的文件夹里面后,会发现里面的html文件的一些图片文件都是叉叉的。这个给做页面的人带来很大的麻烦,但是如果将html跟php放在一个目录里面又会出现文件混乱的问题,请问如何才能解决这个问题,小弟初用模板,谢谢。 问题点数:50、回复次数:16Top
1 楼ccterran(iwind)回复于 2004-08-01 01:13:43 得分 20
图片路径都写成相对于根目录的,比如 /a/b/c/t.htmlTop
2 楼freescy2002(我要努力)回复于 2004-08-01 01:25:41 得分 0
是不是本来这样的<IMG height=38 src="images/i-3_08.gif">
写成<IMG height=38 src="/images/i-3_08.gif">
即可呢???Top
3 楼mrshelly(Shelly)回复于 2004-08-01 04:45:00 得分 20
PHP里设置一个变量.
如 $root_path="/images/";
这样就OK了.
做模板时用相对路径OK后,再替换加上 一模板变量.
在PHP里把 $root_path 的值赋过去.~~~~~~~~~~~~
Top
4 楼freescy2002(我要努力)回复于 2004-08-01 09:54:11 得分 0
mrshelly(Shelly)
这个方法好像不可行,程序运行是没有错误的,只是在美工处理的时候,由于图片路径不对,出现叉叉。Top
5 楼hehe6(hehe6)回复于 2004-08-01 10:32:16 得分 10
把images目录和模板文件放一个目录里,这样打开模板就不会出问题了
程序写的时候$root_path="/";然后在php文件中要引用到图片的时候,就把$root_path加上去,就可以了吧Top
6 楼freescy2002(我要努力)回复于 2004-08-01 12:00:06 得分 0
是不是这样做,各位老大
php.ini中,加上
$root_path="/images/";
然后在php的文件里面是不是加上
$root_path="/";
这样就可以,小弟刚学这个,不太懂,谢谢 。Top
7 楼ice_berg16(寻梦的稻草人)回复于 2004-08-01 13:58:57 得分 0
是不是本来这样的<IMG height=38 src="images/i-3_08.gif">
写成<IMG height=38 src="/images/i-3_08.gif">
即可呢???
--------------------------
这样就可以了啊Top
8 楼xuzuning(唠叨)回复于 2004-08-02 08:19:30 得分 0
是不是本来这样的<IMG height=38 src="images/i-3_08.gif">
写成<IMG height=38 src="/images/i-3_08.gif">
即可呢???
这样显然是不幸的,如果你是在用在线编辑器做模板修改,那么是可以的。
当你在本地编辑模板时,这个“/”指向哪里了呢?
Top
9 楼mrshelly(Shelly)回复于 2004-08-02 08:39:39 得分 0
谁说不可行????
你可能没有理解到。
img src="images/........"
美工调试OK后。
替换为
img src="{root_path}images/.....
$t->setvar("root_path","/site1/");
你说OK还是不OK????Top
10 楼fzjw(冰凌尘埃)回复于 2004-08-02 08:43:40 得分 0
把静态页中的图片路径用域名表示,就不会出现这种问题了
<img src="http://www.wwcec.net/img/001.gif" align="absmiddle" height="30" />Top
11 楼xuzuning(唠叨)回复于 2004-08-02 08:53:49 得分 0
用域名表示固然可以,但不在网上时同样是个叉
to mrshelly(Shelly)
如果要做额外的文本替换,那还要换成{root_path}吗直接换成/好了还省去了模板替换
不过请注意,不以img标记出现的图片你又如何替换呢?比如背景
Top
12 楼allkill(傲气游)回复于 2004-08-02 08:59:47 得分 0
在开发的过程中将同样的图片放在两个目录下面。
这样不管是程序员还是页面设计的都能看到正确的页面。Top
13 楼Einar(Love_lzw)回复于 2004-08-02 09:02:37 得分 0
比如
htm页面你的图片路径为<img src="../images/xxx.jpg">
在用了phplib模板后该htm页面应该为<img src="images/xxx.jpg">
注意你存放模板的文件夹与图片文件夹在同一级
这样讲不知道你明白吗????
Top
14 楼keaizhong(可爱钟)(温州的PHPER)(19801010)回复于 2004-08-02 09:13:40 得分 0
一般页面和程序设计都是分开的,
我以前设计的时候美工管美工的,他完成之后,再给我图片,我放到相应的目录就可以了。Top
15 楼freescy2002(我要努力)回复于 2004-08-02 11:48:32 得分 0
allkill(傲气游)
我现在就是用这个办法来做,但是想想应该会其他的办法的,
你的这个办法虽然不是最完美,但是是简单的。Top
16 楼xuzuning(唠叨)回复于 2004-08-02 12:12:35 得分 0
当作为团队开发时,很自然的就是“图片放在各自的目录下面”。通过开发工具来保持副本的一致性。
当作为个人开发时,维持两个内容相同的目录显然是不必要的。
其实只要把图片目录放在模板目录下,并给以特殊的命名。借助模板驱动就很容易解决这个问题。
通常我们把图片目录命名为images,但是可以按模板变量的格式命名为{images}
这样在模板中就是<img src="{imgages}/img.gif">,这样并不妨碍模板作为html文件打开
而在模板处理程序中用
$tpl->set_var("images","路径/{images}");
就可方便的修改路径了
Top




