日期:2011-06-10  浏览次数:20513 次

新闻文件以文本文件.txt的格式存放在一个固定的目录下,新闻的发布可以自动完成。

该过程由两部分组成:

第一是新闻的显示,由shownews.php脚本实现,代码如下:
〈table border="0" width="90%"〉
〈?php
//在新闻文件中的第一行放新闻的标题
//新闻文件必须是文本文件(.txt)
$newspath = "./news/"; // 修改新闻文件存放的目录
$newsfile = array();
$hd = dir($newspath);
while( $filename = $hd-〉read() ) {
$s=strtolower($filename);
if (strstr($s,".txt")) {
$lastchanged=filemtime($newspath.$filename);
$newsfile[$filename] = $lastchanged;
}
}
arsort($newsfile);
for(reset($newsfile); $key = key($newsfile); next($newsfile)) {
print "〈tr〉〈td〉n";
$fa = file($newspath.$key);
$s=trim($fa[0]);
$s=htmlspecialchars($s);
$lk=strlen($key);
$a=substr($key,0,$lk-4);
$s="〈a href="./pubnews.php?id=".$a."" target=_blank〉".$s."〈/a〉";
print $s." n";
print "(".date("Y年m月d日 - H:i:s",$newsfile[$key]).")
n";
print "〈/td〉〈/tr〉";
}
$hd-〉close();
?〉
〈/table〉

在显示新闻的地方放入代码:
〈?php
require "./shownews.php";
?〉

第二部分为新闻的发布,由pupnews.php脚本实现,代码如下:
〈?php
if ($id=="")
{
Header("Location: ./shownews.php");
}
?〉
〈html〉
〈head〉
〈meta content="chenqiang" name=Author〉
〈?php
$filename="./news/".$id.".txt";
$fa=file($filename);
$n=count($fa);
$s=trim($fa[0]);
$s=htmlspecialchars($s);
$t=" - news by waterwall";
print "〈title〉".$s.$t."〈/title〉n";
?〉
〈/head〉
〈body〉
〈?php
//输出文本标题
print "〈blockquote〉n";
print "〈b〉〈center〉".$s."n";
print "〈/center〉〈/b〉
〈p〉n";
//输出文本正文
for ($i=1;$i〈$n;$i+=1)
{
$s=chop($fa[$i]);
$s=htmlspecialchars($s);
$s=trim($s);
print " ".$s."
n";
}
print "〈/p〉〈/blockquote〉n";
?〉
〈/body〉
〈/html〉

用数据库也可实现,这只是文件形式的实现方式。