重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
网页一般是单向主动短链接,实时更新实在有些不便,即使一方掉线,另一方也不能及时感知。一般所谓的实时刷新,大多采用定时刷新(轮询),或长轮询的方式做,ajax用于更新数据确实是比较简单方便的。
创新互联建站专注于企业全网营销推广、网站重做改版、通海网站定制设计、自适应品牌网站建设、H5技术、成都做商城网站、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为通海等各大城市提供网站开发制作服务。
轮询你就settimeout,长轮询你就每次接收数据成功后,再来一次长轮询。但你链接别人的数据,了解一下供应商的刷新机制、周期再做考虑。
当然这些都是伪实时,真的实时用http协议是不合适的,你得用flash插件做。而你用的是api供应商的东西,这条路就基本走不通了。
有两种实现方法:
1、你可以用PHP服务器推技术,当数据发生变化时,主动推送到页面显示。相关技术可以参考文档。百度也很多。
2、你可以用Javascript,每过一秒钟,使用Ajax获取数据,一秒钟刷新一次,也可以实现的。
第一种我也不会。第二种相信你可以的。
while的话是循环,你用了只会一行行加
前言 现在很多有个人主页或者博客的朋友选择租用虚拟主机 而相当一部分虚拟主机支持php 如果你有一个支持php的主机空间 有没有用php把自己的网站武装起来呢?
能不能让php为你的网页添加一些每隔一段时间就自动更新的内容 以更好的吸引访客呢?实现这一功能并不需要太高深的编程知识 请看以下例子 (一)英语谚语
让我们来看一个简单的应用 让php程序从数据库中随机提取一行记录 显示在网页上 隔 分钟再去读取另一条记录 英汉对照的谚语是个适合显示的内容
考虑到放置个人主页的廉价虚拟主机多数不支持MySQL之类的数据库 我们使用文本型数据文件来存放数据 这对于流量不很大的网站来说足够了 建立一个文本文件 命名为english dat 内容如下
A bad beginning makes a bad ending 恶其始者必恶其终
A bad bush is better than the open field 有胜于无
A bad promise is better than a good lawsuit 吃亏的和解也比胜诉强
A bad conscience is a snake in one s heart 做贼心虚
A bad custom is like a good cake better broken than kept 坏习惯像鲜馅饼 分食要比保存好
A bad padlock invites a picklock 开门揖盗
……
注意 每行是一条完整的记录 中间不要换行 文件中不能有半角的双引号( )否则在输出数据时程序会解析出错 网上有很多这样的内容 搜索一下即可 也可以去我的网站 musicfly net/english dat下载一个数据文件
下面就是编写读取数据的程序了 建立一个文本文件 命名为english dat 加入源代码如下
<?php
$filename = english dat ; //数据文件名
$refresh = ; //更新周期(以秒为单位 可根据需要自行调整)
$data = file($filename); //将数据文件装入一个数组
$num_lines = count($data); //数据文件行数 也就是记录条数 mt_srand(floor(time() / $refresh));
$id = mt_rand( $num_lines ); //随机选择一条记录号
$content = chop($data[$id]); //根据记录号选择相应的数据 并截去最后的换行符
echo document write( $content ); ; //用javascript形式输出数据?>
将english dat和english php存盘 上传至服务器的同一个目录下
最后一道工序就是让你的网页调用这个php程序来显示内容了 因为php运行的结果是以javascript形式输出的 我们只要把这段php当成一段javascrupt来调用即可 方法是 用记事本或网页编辑软件打开你要修改的文件 在你想让动态内容显示的位置加入以下代码
<script language= javascript src= english php ></script>
注意 如果你修改的文件和english php不在一个目录下 要在src= 里注明english php的相对路径
把这个修改后的文件上传至服务器 在浏览器中打开 如果你每一步做得都正确 应该就可以看到数据文件中的内容显示出来了!过 分钟刷新一下页面看看 是不是显示的内容变化了?而你并没有为更新这些内容做什么额外的劳动 php程序为你做了
如果你的朋友想在自己的网页或者博客上实现同样的功能而又没有支持php的主机 可以通过以<script language= javascript src=
当然 这个程序还可能存在编码方式不兼容的问题 因为内容都是以gb 编码显示出来的 用在UTF编码的网页上 中文会变成乱码 解决的方法不在本文的讨论范围内 请搜索有关教程
实现了这个功能 你已经开始从的静态世界向php的动态世界进军了 来日方长 下一次 让我们看看怎样用php为你的网页加个 每日星座运势 功能
class=akey target=_blank你的网址/程序路径/english php ></script>的方式调用你主机上的程序来显示同样的内容
当然 这个程序还可能存在编码方式不兼容的问题 因为内容都是以gb 编码显示出来的 用在UTF编码的网页上 中文会变成乱码 解决的方法不在本文的讨论范围内 请搜索有关教程
lishixinzhi/Article/program/PHP/201311/21515