• 3969阅读
  • 0回复

[原创]用php函数实现本站左侧漂浮的QQ状态图 [复制链接]

上一主题 下一主题
离线cai
 

只看楼主 倒序阅读 0楼 发表于: 2005-08-17
文件如下:

其实是把js脚本通过php函数封装,
然后方便调用。

本站原创,转载请注明出处。

<?php

/*
* Filename:      qq.php
* Function:      This file is for showing QQ status
* Author:      Jiucai
* Email:      [email protected]
* Site:            http:/www.jiucai.org
* DateTime:      2005-8-17 0:49
*/


//=============================================
//来源: http://www.jiucai.org
//作者: Jiucai([email protected])
//时间: 2005-8-17 0:49
//显示QQ在线状态 showqq($qq,$strarr,$imgpath='image/web/qq/',$site='www.jicuai.net')
//      $qq:            字符串QQ号码,多个用单角冒号(:)分隔 // 例如 $qq="99321972:12345678";
//      $strarr:      数组,要显示的文字
//                  格式: $arrelement='$strname,$stronline,$stroffline';
//                  例如: $strarr[0]="韭菜,在线即时跟管理员韭菜交谈,管理员韭菜不在线,请留言,会尽快回复你的";
//      $imgpath:      所需要的图片路径,可以是调用本函数的页面的相对路径,也可以url地址,以 / 结尾
//      $site:            调用者站点的url地址,不包含http://,此参数有利于腾逊公司统计互动QQ使用情况,可以设置为任意汉字
//      以上所有参数调用时,请不要包含 , ' "
//      返回值:            字符串
//=============================================


function showqq($qq,$strarr,$imgpath='image/web/qq/',$site='www.jicuai.net')
{
     $tmparr=array();
     $qqarr=explode(":",$qq);
     for($ii=0; $ii<sizeof($strarr); $ii++)
     {
           $tmparr[$ii]=array($strarr[$ii]);
     }


$output="<script type=\"text/javascript\" language=\"javascript\">
var online= new Array();
if (!document.layers)
document.write('<div id=\"divStayTopLeft\" style=\"position:absolute\">');
</script>

<layer id=\"divStayTopLeft\">
<script src=\"http://webpresence.qq.com/getonline?Type=1&".$qq.":\"></script>
<table border=\"0\" width=\"110\" cellspacing=\"0\" cellpadding=\"0\">
<tr>
     <td width=\"110\"><img border=\"0\" src=\"".$imgpath."QQup.gif\" width=\"110\" height=\"70\"></td>
</tr>";

      for($ii=0; $ii<sizeof($tmparr); $ii++)
      {
           $arr=implode(',',$tmparr[$ii]);
           //echo $arr;
           /*
           $arr=explode(",",$arr);
           foreach( $arr as $key=>$val)
           {
                 echo '\$key='.$key.' \val='.$val.'<br>';
           }
           */
           list($name,$online,$offline)=explode(",",$arr);
$output.="<tr>\n\t<td valign=\"middle\" background=\"".$imgpath."QQmiddle.gif\"> \n";
$output.="\t <script type=\"text/javascript\" language=\"javascript\"> \n";
$output.="if (online[".$ii."]==0) \n";
$output.="document.write(\" <img src=".$imgpath."QQoffline.gif border=0 align=absmiddle> <a target='_blank' href='http://wpa.qq.com/msgrd?V=1&Uin=".$qqarr[$ii]."&Site=".$site."&Menu=no' title='".$offline."'>".$name."</a>\"); \n";
$output.="else \n";
$output.="document.write(\" <img src=".$imgpath."QQonline.gif border=0 align=absmiddle> <a target='_blank' href='http://wpa.qq.com/msgrd?V=1&Uin=".$qqarr[$ii]."&Site=".$site."&Menu=no' title='".$online."'>".$name."</a>\"); \n";
$output.="\t </script> \n";
$output.="\t </td> \n";
$output.="</tr>\n";

           //echo $name.'<br>';
           //echo $online.'<br>';
           //echo $offline.'<br>';
     }

$output.="<tr>
     <td width=\"110\"><img border=\"0\" src=\"".$imgpath."QQdown.gif\" width=\"110\" height=\"31\"></td>
</tr>
</table>
</layer>

<script type=\"text/javascript\">
var verticalpos=\"frombottom\";
if (!document.layers)
document.write(\"</div>\");
function JSFX_FloatTopDiv()
{
     var startX =4,
     startY = 350;
     var ns = (navigator.appName.indexOf(\"Netscape\") != -1);
     var d = document;
     function ml(id)
     {
           var el=d.getElementById?d.getElementById(id):d.all?d.all[id]:d.layers[id];
           if(d.layers)el.style=el;
           el.sP=function(x,y){this.style.left=x;this.style.top=y;};
           el.x = startX;
           if (verticalpos==\"fromtop\")
           el.y = startY;
           else{
           el.y = ns ? pageYOffset + innerHeight : document.body.scrollTop + document.body.clientHeight;
           el.y -= startY;
           }
           return el;
     }
     window.stayTopLeft=function()
     {
           if (verticalpos==\"fromtop\"){
           var pY = ns ? pageYOffset : document.body.scrollTop;
           ftlObj.y += (pY + startY - ftlObj.y)/8;
           }
           else{
           var pY = ns ? pageYOffset + innerHeight : document.body.scrollTop + document.body.clientHeight;
           ftlObj.y += (pY - startY - ftlObj.y)/8;
           }
           ftlObj.sP(ftlObj.x, ftlObj.y);
           setTimeout(\"stayTopLeft()\", 10);
     }
     ftlObj = ml(\"divStayTopLeft\");
     stayTopLeft();
}
JSFX_FloatTopDiv();
</script>";

     return $output;
}

/*
//调用示例
$strarr[0]="韭菜,在线即时跟管理员韭菜交谈,管理员韭菜不在线,请留言,会尽快回复你的";
$strarr[1]="aaaa,在线即时aaa,aaa不在线";
$qq="99321972:51234";

echo showqq($qq,$strarr);

/*

?>

同时提供下载
附件: showqq.rar (8 K) 下载次数:3
快速回复
限100 字节
 
上一个 下一个