首 页   · 站长博客 · 用户注册 · 会员登陆  · 会员排行  ·最新主题  ·最近回复  精华区  版权声明  ·论坛管理
  当前登录身份:游客,请先登录。  笔名: 口令: 验证码:   
楼 主  index »  PHP相关资源下载区 » [转帖]如何将PHP的结果输出到非PHP页面中  


  作者:lather
  注册时间:2005-04-21
  主题/回复:37/63
  积分:1079
  等级:★★★☆(七级)
  称号:论坛贤士

  lather@lather.co..
  66584152
  www.ent.bj.cn/

 

 发表:2005-04-26 08:56:09 阅读 2120 次 回复 0 次 得分0  |   字号 字色
[转帖]如何将PHP的结果输出到非PHP页面中
这个问题是当我自已实现了统计计数之后,我想将它的输出用在我的不支持PHP功能的页面中,那么应该如何做呢?主要的解决办法是输出一段javascript脚本即可。这个是很有用的,比如实现动态新闻, 广告轮询,当然这里是讲如何把某个程序的下载计数输出到非PHP页面中去。 
   
    文件格式为: 
   
    索引|文件名提示|链接|计数 
   
  注意,这里用"|"线分隔。我采用的是文本文件进行处理。里面可能某一行数据为: 
   
    file1|测试文件1|../download/file1.zip|10 
   
  可以看到,下载次数可能已经是10次了。现在我就想把这个10次输出到其它的页面中。 
   
    第一步:写Javascript脚本 
   
    很简单: 
   
  < script language=javascript src="../bin/output.php?id=file1">< /script> 
   
    是不是!src后面是指输出的脚本程序,"?"后面是传入脚本的参数。那么output.php应该输出什么数据才能被执行呢?应该输出javascript语句,如document.write()之类的语句。这样,浏览器就会把output.php的输出结果看成一段javascript程序再进行处理,就好象直接写的脚本一样,只不过这段脚本是从别的地方得到的。 
   
    好了,知道应该输出什么样的内容了,就可以写php程序了。 
   
    第二步:输出结果 
   
   
  $fp=fopen("../count/download.db", "r"); 
   
  $flag=FALSE; 
   
  while(!feof($fp)) 
   
  { 
   
  $line=fgets($fp, 256); 
   
  list($index, $title, $url, $count)=split("\|", $line); 
   
  if (strtolower($index)==strtolower($id)) 
   
  { 
   
  $flag=TRUE; 
   
  break; 
   
  } 
   
  } 
   
  fclose($fp); 
   
  if ($flag) 
   
  { 
   
  echo "document.write($count);"; 
   
  } 
   
  else 
   
  echo "document.write(\"not found\");"; 
   
  ?> 
   
    这段代码也很简单,但是有几点要说明。先打开一个文件。$flag表示是否找到指定索引的文件记录, 
   
  首先置为FALSE。再是一个循环,条件是文件没有结束。 
   
    然后是循环体:取出一行文本,长度最好长点。进行字段分割,以"|"为分割符。注意,使用的split函数是正则表达式,"|"是一个特殊符号用以用"\"号。然后分别放入相应的变量中。在这里我们真正关心的是$index和$count。比较输入的参数$id与取出的索引($index)是否相等,如果相等,则将找到标志设为TRUE,退出循环。否则查找下一行数据。 
   
    结束时,关闭文件,根据是否找到标志输出相应的javascript脚本即可。 
   
    对于$id的使用,是PHP自动将调用的URL处?id=xxx进行了处理,可以直接使用。也可以使用$HTTP_GET_VARS[id]。 
  
 
  页数1/1首页 « 1 » 末页
  发表回复:您还没有登陆,无法发表回复。请先[登陆]

一起PHP技术联盟 主办:一起PHP 联系方式:站长QQ:4304410 QQ群:8423742 20159565 站长博客 E-mail: nqp@nqp.me 执行时间:0.005sec
SimsmaBBS 2008 (v6.0) Developed by 17php.com,Copyright(C)2003-2010 All rights reserved. 副本授权:一起PHP官方专用版