PHP自动更新新闻DIY

我们浏览一些网站的时候,往往看到一些新闻是刚刚更新不久的,如果要是人工维护的话,那会是一项非常繁琐的工作。然而,我们可以通过程序来控制实现更新操作,事情就会变得很方便了(我可不是要偷懒)。
 
  在这里,我使用PHP来实现这一功能。其原理就是根据新闻发布的时间逆序排列好,然后在一页面显示新闻连接列表,每一个连接都对应一条新闻内容网页。具体操作如下:

  一、首先,在你的站点下建立一个目录,将编辑好的新闻页都保存在此目录下,将来所有的新闻页都放入这里,方便维护。新闻页格式为超文本方式(可别说你还不会HTML),首行为“<HTML><HEAD><TITLE>新闻标题</TITLE></HEAD>”(原因随后解释)。

  二、编写程序,实现新闻自动更新功能(假设文件名为paixu.php)

  源程序如下:

<?php
$fp=array("filename"=>"","filetime"=>"","firstline"=>"");//建立数组,保存文件名、文件首行
$dd=dir('新闻保存目录');//读取新闻文件的保存目录
$i=0;
clearstatcache();
while ($file=$dd->read())//循环读出目录中的文件
{
if(is_file($dd->path."/".$file))
{
$fp[$i]["filename"]=$dd->path."/".$file;//保存文件名
$fr=fopen($dd->path."/".$file,"r");
$fp[$i]["firstline"]=fgetss($fr,60);//去除HTML标记后保存文件首行(也就是为什么我们要把新闻页首行写成要求的格式)
fclose($fr);
if($time=date("Y m d H:i",filemtime($dd->path."/".$file)))//保存文件时间,以此作为排序条件
{
$fp[$i]["filetime"]=$time;
}
$i++;
}
}
$i=count($fp);//保存文件数
$i-=4;
for($j=0;$j<$i;$j++)//按照冒泡算法排序(电脑报已经有文章介绍了,我不罗嗦了)
for($k=$i;$k>$j;$k--)
if($fp[$j]["filetime"]<=$fp[$k]["filetime"])
{
$c=$fp[$j]["filetime"];
$fname=$fp[$j]["filename"];
$fcontent=$fp["$j"]["firstline"];
$fp[$j]["filetime"]=$fp[$k]["filetime"];
$fp[$j]["filename"]=$fp[$k]["filename"];
$fp[$j]["firstline"]=$fp[$k]["firstline"];
$fp[$k]["filetime"]=$c;//line30
$fp[$k]["filename"]=$fname;
$fp[$k]["firstline"]=$fcontent;
}
for($i=0;$i<=(count($fp)-4);$i++)//读取保存的文件信息,做好相应连接
{
echo "<tr><td>";
echo "<a href=".$fp[$i]["filename"].">".$fp[$i]["firstline"]."</a>";
echo "</td><td class=font1>";
echo "(".$fp[$i]["filetime"].")<br>\n";
echo"</td></tr>";
}
$dd->close();
?>

  三、将程序和目录放到你的网站上,然后在浏览器敲入HTTP://网站名/目录/panxu.php,能看到吗?

  最后,再罗嗦几句(我可不是要多赚Money,主要还是为人民服务),你的网站必须支持php功能。

  而且,我仅仅提供了基本的功能,你可以增加更多的控制功能,还有页面的修饰和美化等工作,就要靠你自己了(什么?说我不负责到底?我苦...)。 好了,就先到此为止。有什么不对的地方,还请大家多指教,可发Email:zbclh@sina.com与我联系交流。

(0)

相关推荐

  • php实现修改新闻时删除图片的方法

    本文实例讲述了php实现修改新闻时删除图片的方法.分享给大家供大家参考.具体实现方法如下: //old_contents:待修改的公告内容; //$content:修改后的公告内容 $oldPic=array(); $nowPic=array(); preg_match_all("/\<IMG(.*?)src=\"(.*?)\">/",$old_contents,$match); if(!empty($match[2])){ foreach($match

  • PHP实现简单的新闻发布系统实例

    本文实例讲述了PHP实现简单的新闻发布系统.分享给大家供大家参考.具体如下: 本人小白,一直在公司用模板和框架写PHP,发现有时候连基本的sql语句都忘记了,所以有空想把PHP基础复习下,巩固下.分页和搜索,以及排序,还没写,后期继续更新...(代码修改:添加搜索和分页功能) articlePublish.html: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3

  • 在php中使用sockets:从新闻组中获取文章

    PHP能打开远程或本地主机上的Socket端口.本文是一个使用Socket的小例子:连接到一个Usenet新闻组服务器,同服务器对话,从新闻组中下载一些文章. 在php中打开一个socket使用fsockopen()打开一个socket.这个函数在php3和php4种都可以使用.函数声明是这样的: int fsockopen (string hostname, int port _[, int errno [, string errstr [, double timeout]]]) 这个函数将打

  • PHP静态新闻列表自动生成代码

    function CreateShtml()  {  ob_start(array("callback_CreateShtml","callback_GoToShtml"));  } function callback_CreateShtml($buffer)  {  $page = intval(@$_REQUEST["page"]);  $fileName = $_SERVER['DOCUMENT_ROOT'] . dirname($_SER

  • php jquery 实现新闻标签分类与无刷新分页

    现在jquery的应用越来越广泛了,在很多网站的新闻板块都实现了 标签分类 + 无刷新分页 的效果. 也自己尝试写了一个,效果图如下(样式可以按用户需求自己去整): 接下来详细介绍实现过程: 我一向是见招拆招的解决思路,这里需要运用到3个东西--标签页效果插件和分页插件,jquery的getJson请求. 因此我使用了jquery-ui插件,jquery-page插件,现提供下载地址: jquery_all.rar 里面包含了3个JS脚本文件和2个样式表:jquery-1.3.2.min.jsj

  • 用PHP+java实现自动新闻滚动窗口

    show.php源代码: <? if ($action=="cp"){ echo"<div align=center>   <p>滚动菜单资料输入端</p>   <form method=post action=show.php?action=edit>     <p>文字一:        <input type=text name=t1 maxlength=30>       链接一:     

  • 使用PHP制作新闻系统的思路

    我们可以用新闻系统来存储新闻,我们可以对新闻进行添加.删除等操作,这样减少了大家的工作量,为什么不实验一下. 首先,建立一个表. create table news ( n_id int(255) not null auto_increment, n_date datetime not null, news text not null, primary key(n_id) ); 第二步,设置你的登陆信息 $database_user_name="root";              

  • 简单的php新闻发布系统教程

    简单的php新闻发布系统教程(第一版)第一讲:用 phpmyadmin 建立数据库首先建立一个数据库,名为 yayu .在这个数据库下建立一个数据表,名为 news .下面进入一个重点,那就是在表 news 下建立各个字段. 那么,什么叫字段呢?通俗点,就是一类事物的总称.比如说,所有的新闻发表时间用一个名词来代表(从偶的经验来看,用 phpmyadmin 建立 字段可以用中文,但从习惯来说还是用英文,没办法,计算机美国最牛嘛).偶们用" time "来表示.在字段 time 下可以有

  • PHP自动更新新闻DIY

    我们浏览一些网站的时候,往往看到一些新闻是刚刚更新不久的,如果要是人工维护的话,那会是一项非常繁琐的工作.然而,我们可以通过程序来控制实现更新操作,事情就会变得很方便了(我可不是要偷懒). 在这里,我使用PHP来实现这一功能.其原理就是根据新闻发布的时间逆序排列好,然后在一页面显示新闻连接列表,每一个连接都对应一条新闻内容网页.具体操作如下: 一.首先,在你的站点下建立一个目录,将编辑好的新闻页都保存在此目录下,将来所有的新闻页都放入这里,方便维护.新闻页格式为超文本方式(可别说你还不会HTML

  • PostgreSQL更新表时时间戳不会自动更新的解决方法

    PostgreSQL更新表时时间戳不会自动更新的解决方法,具体如下 操作系统:CentOS7.3.1611_x64 PostgreSQL版本:9.6 问题描述 PostgreSQL执行Insert语句时,自动填入时间的功能可以在创建表时实现,但更新表时时间戳不会自动自动更新. 在mysql中可以在创建表时定义自动更新字段,比如 : create table ab ( id int, changetimestamp timestamp NOT NULL default CURRENT_TIMEST

  • SQL Server自动更新统计信息的基本算法

    自动更新统计信息的基本算法是: · 如果表格是在 tempdb 数据库表的基数是小于 6,自动更新到表的每个六个修改. · 如果表的基数是大于 6,但小于或等于 500,更新状态每 500 的修改. · 如果基数大于 500,表为更新统计信息时(500 + 20%的表)发生了更改. · 表变量为基数的更改不会触发自动更新统计信息. 注意:此严格意义上讲,SQL Server 计算基数为表中的行数. 注意:除了基数,该谓语的选择性也会影响 AutoStats 生成.这意味着该统计信息可能无法更新的

  • 使用Appcan客户端自动更新PHP版本号(全)

    在项目开发过程中遇到app端自动更新,查阅了相关资料然后把Appcan客户端自动更新PHP版本号的方法整理出来,具体代码讲解如下. 服务端文件:update.php.version.php.version.xml update.php 内容: PHP <?php define('CIN', true); $oldver = $_REQUEST['ver'];//客户端传过来的版本号 $platform = $_REQUEST['platform'];//客户端的平台 $info = simple

  • Linux下SVN服务器自动更新文件到Web目录的方法

    说明: 服务器操作系统:CentOS 服务器IP:192.168.21.134 SVN安装路径:/usr/local/svn SVN项目路径:/home/svn SVN登录账号:osyunwei SVN登录密码:123456 Web站点根目录:/home/web 实现目的: 当svn项目中有任何修改更新时,系统会自动实时从svn中检出文件并同步到Web站点根目录 具体操作: 一.使用SVN中post-commit实现自动实时从svn中检出文件并同步到Web站点根目录 cd /home/svn/h

  • Android App实现应用内部自动更新的最基本方法示例

    这只是初步的实现,并没有加入自动编译等功能.需要手动更改更新的xml文件和最新的apk.    共涉及到四个文件! 一.客户端 AndroidUpdateTestActivity:程序首页 main.xml:首页布局 Update:更新类 softupdate_progress:更新等待界面 Updage package majier.test; import java.io.File; import java.io.FileOutputStream; import java.io.IOExce

  • 浅析Android手机卫士关闭自动更新

    推荐阅读: 浅析Android手机卫士自定义控件的属性 保存数据的四种方式,网络,广播提供者,SharedPreferences,数据库 获取SharedPreferences对象,通过getSharedPreferences()方法,参数:名称,模式 例如config,MODE_PRIVATE 调用SharedPreferences对象的edit()方法,得到Editor对象 调用Editor对象的putBoolean()方法,放入布尔数据,参数:键值对,"update" false

  • MySQL的源码安装及使用UDFs进行数据自动更新的教程

    MySQL的源码安装 1. 安装依赖组件 # yum install gcc gcc-c++ ncurses-devel perl -y 2. 安装cmake # wget http://www.cmake.org/files/v2.8/cmake-2.8.12.tar.gz # tar zxvf cmake-2.8.12.tar.gz # cd cmake-2.8.12 # ./bootstrap # make && make install 3. 安装bison # wget http

  • MySQL timestamp自动更新时间分享

    通常表中会有一个Create date 创建日期的字段,其它数据库均有默认值的选项.MySQL也有默认值timestamp,但在MySQL中,不仅是插入就算是修改也会更新timestamp的值! 这样一来,就不是创建日期了,当作更新日期来使用比较好! 因此在MySQL中要记录创建日期还得使用datetime 然后使用NOW() 函数完成! 1,TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP  在创建新记录和修改现有记

  • Android如何实现APP自动更新

    先来看看要实现的效果图: 对于安卓用户来说,手机应用市场说满天飞可是一点都不夸张,比如小米,魅族,百度,360,机锋,应用宝等等,当我们想上线一款新版本APP时,先不说渠道打包的麻烦,单纯指上传APP到各大应用市场的工作量就已经很大了,好不容易我们把APP都上传完了,突然发现一个会导致应用闪退的小Bug,这时那个崩溃啊,明明不是很大的改动,难道我们还要再去重新去把各大应用市场的版本再上传更新一次?相信我,运营人员肯定会弄死你的!! 有问题,自然就会有解决问题的方案,因此我们就会想到如果在APP里

随机推荐