网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > PHP > PHP技术进阶 > PHP实现网页自动更新块  

PHP实现网页自动更新块

2006-04-02  作者:bitsCN整理  来源:中国网管联盟  点评 投稿 收藏

  能不能让php为你的网页添加一些每隔一段时间就自动更新的内容,以更好的吸引访客呢?实现这一功能并不需要太高深的编程知识,请看以下例子:

网管联盟bitsCN@com

  (一)英语谚语 网管朋友网www_bitscn_net

  让我们来看一个简单的应用:让php程序从数据库中随机提取一行记录,显示在网页上,隔15分钟再去读取另一条记录。英汉对照的谚语是个适合显示的内容。

网管u家www.bitscn.net

  考虑到放置个人主页的廉价虚拟主机多数不支持MySQL之类的数据库,我们使用文本型数据文件来存放数据,这对于流量不很大的网站来说足够了。建立一个文本文件,命名为english.dat,内容如下:

网管u家u.bitsCN.com

  A bad beginning makes a bad ending. 恶其始者必恶其终。 中国网管联盟bitsCN.com

  A bad bush is better than the open field. 有胜于无。 网管下载dl.bitscn.com

  A bad compromise is better than a good lawsuit. 吃亏的和解也比胜诉强。 网管联盟bitsCN_com

  A bad conscience is a snake in one’s heart. 做贼心虚。

网管有家www.bitscn.net

  A bad custom is like a good cake, better broken than kept. 坏习惯像鲜馅饼,分食要比保存好。

网管联盟bitsCN_com

  A bad padlock invites a picklock. 开门揖盗。

网管网www_bitscn_com

  ……

网管u家u.bitsCN.com

  注意,每行是一条完整的记录,中间不要换行;文件中不能有半角的双引号( " )否则在输出数据时程序会解析出错。网上有很多这样的内容,搜索一下即可,也可以去我的网站http://www.musicfly.net/english.dat下载一个数据文件。 网管联盟bitsCN@com

  下面就是编写读取数据的程序了。建立一个文本文件,命名为english.php,加入源代码如下:

网管u家u.bitsCN.com

<?php
$filename = ’english.dat’; //数据文件名
$refresh = 900; //更新周期(以秒为单位,可根据需要自行调整)
$data = file($filename); //将数据文件装入一个数组
$num_lines = count($data); //数据文件行数,也就是记录条数 mt_srand(floor(time() / $refresh));
$id = mt_rand(0, $num_lines - 1); //随机选择一条记录号
$content = chop($data[$id]); //根据记录号选择相应的数据,并截去最后的换行符 网管朋友网www_bitscn_net

echo "document.write(\"$content\");"; //用javascript形式输出数据
?> 

网管论坛bbs_bitsCN_com

  将english.dat和english.php存盘,上传至服务器的同一个目录下。 网管bitscn_com

  最后一道工序就是让你的网页调用这个php程序来显示内容了。因为php运行的结果是以javascript形式输出的,我们只要把这段php当成一段 javascrupt来调用即可,方法是:用记事本或网页编辑软件打开你要修改的html文件,在你想让动态内容显示的位置加入以下代码: 网管网www.bitscn.com

<script language="javascript" src="english.php"></script> 网管联盟bitsCN_com

  注意,如果你修改的html文件和english.php不在一个目录下,要在src="..."里注明english.php的相对路径。

网管有家www.bitscn.net

  把这个修改后的html文件上传至服务器,在浏览器中打开。如果你每一步做得都正确,应该就可以看到数据文件中的内容显示出来了!过15分钟刷新一下页面看看,是不是显示的内容变化了?而你并没有为更新这些内容做什么额外的劳动,php程序为你做了。

网管bitscn_com

  如果你的朋友想在自己的网页或者博客上实现同样的功能而又没有支持php的主机,可以通过以<script language="javascript" src="http://你的网址/程序路径/english.php"></script>的方式调用你主机上的程序来显示同样的内容。 网管u家www.bitscn.net

  当然,这个程序还可能存在编码方式不兼容的问题,因为内容都是以gb2312编码显示出来的,用在UTF编码的网页上,中文会变成乱码。 网管有家www.bitscn.net

TAGs   更新   自动   网页   实现   文件   内容   数据   程序   显示   php   //      
 上一篇:在PHP3中实现SESSION的功能   下一篇:在静态页面中实现点击数统计
PHP实现网页自动更新块 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: