写在前面:
很多人会在浅尝辄止以后就下结论说,xxx很简单;学xxx没前途,因为太简单了;还是学xxx有前途,因为xxx够难;
其实我也经历过这样的阶段,但是我慢慢告诉自己,再也不能犯这样的错误,这么幼稚的错误......
本小文的初衷是在列表模板中显示内容页的全文,但是因为在列表页中并没有定义[!--newstext--],所以在列表页中几乎没有办法像我们平时的调用那么简单易实现;
我们能想到的思路
1. 利用类sql语句fetch1实现获取内容,大概的实现如下:
<?php
$fr=$empire->fetch1("select newstext from meiniu_ecms_news_data_1 where id=[!--id--]"); ?>
<p class="web_size" id="title-7013451" style="WORD-BREAK: break-all;"><?=$fr[newstext]?></p>
但是这种方法在linux+apache模式下遇到严重的问题,甚至最初我的环境都不能支持最简单的php(比如echo语句)的解析,虽然后来经过修改http.conf可以实现,
但是还是没有能够完成sql语句的调用,总之是有问题,慢慢熬不过放弃这条路。
2. 从网络上找到可以把newstext字段从副表中挪到主表(网上解析说这种挪动可能会降低数据库的效率,从我的实践来看,没办法比对,但是这种说法的正确性应该是有的,所以非必要情况下不建议这么弄),然后把这个字段设置为可以再列表模板中显示,如下图:
首先进入“模板-》管理列表模板”,如下图,点“新闻系统模型”后点“修改”
后点“修改”,进入下图:
点“管理系统模型”
点“管理字段”
点"newstext"前端的“副表”,进入如下界面:
点“开始转移”,newstext字段从副表开始向主表转移;转移完成后回到“模型”部分,点“修改”如下图:
在“列表模型”列和“新闻正文”行对应的复选框打钩。
这样,列表模板就完全支持newstext字段了,感兴趣的可以试下。
顺便给自己的站做个小广告: www.meiniu.org 还处于开发阶段,大概两周后上线了,如果你学到了东西,不妨点下,给我的小站增增人气,谢谢。
===================================================
另外,对于php在linux+apache下不能解析的问题,转载了http://blog.csdn.net/jhj117/article/details/6958318的文章
现象:
php, apache都安装完成,但是这样的代码,浏览器无法解析其的php代码.
<html><body><h1>d</h1>
<?php
echo "test";
?>
</body></html>
问题解决:
在httpd.conf中加入以下二条, 重启.OK!
AddHandler php5-script .php .html
AddType text/html .php .html
也有人推荐这样,(未试过)
AddType application/x-httpd-php .htm
AddType application/x-httpd-php .html