自动发布新闻的php代码
新闻文件以文本文件.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]).")<br>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><br><p>n";
//输出文本正文
for ($i=1;$i<$n;$i+=1)
{
    
$s=chop($fa[$i]);
    
$s=htmlspecialchars($s);
    
$s=trim($s);
    print 
"&nbsp&nbsp&nbsp&nbsp".$s."<br>n";
}
print 
"</p></blockquote>n";
?>
</body>
</html>

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