在网上经常用看到到有这个功能。感觉蛮实用的。不知道哪位高手有源代码。~谢谢了!!

解决方案 »

  1.   

    网上找了一下源代码。但不是很完整。自己改了下,顶了没用。不知道哪里错了。请教各位高手!!
    demo.php 代码<?php 
    require_once("../inc/db.php");

    $sql_news="select * from news where id='6'";
    $res_news=mysql_query($sql_news);
    $row_news=mysql_fetch_array($res_news);

    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>Digg Demo</title>
    <style>
    .buttons{margin:20px 12px 12px;text-align:center;}
    .buttons img{margin:0 5px 0 0;}
    .{padding:15px 0 0 40px;overflow:hidden;zoom:1;}
    #0, #1{width:189px;height:48px;background:url('./img/.gif') no-repeat -189px 0;border:0px none;cursor:pointer;position:relative;margin:0;padding:0;overflow:hidden;float:left}
    #1{background-position:-378px 0;margin-left:10px;}
    .bar{position:absolute;left:9px;top:32px;width:55px;height:5px;border:1px solid #40a300;background-color:#fff;overflow:hidden;text-align:left;}
    #1 .bar{border-color:#555;}
    .bar div{background:url('./img/sprites.gif') repeat-x 0 -265px;height:5px;overflow:hidden}
    #1 .bar div{background-position:0 -270px;}
    #barnum1, #barnum2{position:absolute;top:30px;left:70px;font:400 10px/12px arial;color:#333;}
    </style>
    <script language="javascript" src="digg.js"></script>
    <script type="text/javascript">var url ='/diggc/';</script>
    </head>
    <body>
    <div class="">
    <div id="0" onmouseover="this.style.backgroundPosition='0 0'" onmouseout="this.style.backgroundPosition='-189px 0'" onfocus="this.blur()" onClick="sEval(<?php echo $row_news[id] ?>,1)">
    <div class="bar"></div>
    <span id="barnum1"><span id="s1"><?php echo $row_news[ding] ?></span></span>
    </div>
    <div id="1" onmouseover="this.style.backgroundPosition='-567px 0'" onmouseout="this.style.backgroundPosition='-378px 0'" onfocus="this.blur()" onclick="sEval(<?php echo $row_news[id] ?>,2)">
    <div class="bar"></div>
    <span id="barnum2"><span id="s2"><?php echo $row_news[cai] ?></span></span>
    </div>
    </div></body>
    </html>
    digg.php 代码<?php
    $id =intval($id);
    $et =intval($et);
    if($_COOKIE['digg'.$id]=='' || empty($_COOKIE['digg'.$id]) ){
    setcookie("digg".$id, $id, time()+3600);  /* expire in 1 hour */
    if($et=="1"){
    $sql="update news set ding=ding+1 where id='$id'";
    $res=mysql_query($sql);
    }
    if($et=="2"){
    $sql="update news set cai=cai+1 where id='$id'";
    $res=mysql_query($sql);
    }
    echo "var re=new Array();re[0]=".$id.";re[1]=".$et.";re[2]=\"success\";re[3]=\"投票成功!\";";
    }else{
    echo "var re=new Array();re[0]=".$id.";re[1]=".$et.";re[2]=\"fail\";re[3]=\"嬲你的,囧^__^,不是刚刚顶过吗!!\";";
    }
    ?>
    digg.js 代码function $Obj(o){
    return document.getElementById(o);
    }var etag=false;
    function sEval(softid,et){
    if(etag==true)
    {
    alert('您已经投过票了,感谢您的参与!');
    return;
    }
    var file=url +'digg.php?et='+et+'&id='+softid;
    var html_doc=document.getElementsByTagName('head')[0];
        var js=document.createElement('script');
        js.setAttribute('type', 'text/javascript');
        js.setAttribute('src', file);
    js.onreadystatechange=function(){
            if(js.readyState=='loaded'||js.readyState=='complete'){
                sEvalRes();
            }
        }
        js.onload=function(){
            sEvalRes();
        }
    html_doc.appendChild(js);
    etag=true;
    }function sEvalRes(){
    if(re[2]=='success'){
    var s=$Obj('s'+re[1]).innerHTML;
    $Obj('s'+re[1]).innerHTML=parseInt(s)+1;
    sUpdate();
    alert(re[3]);
    }
    else if(re[2]=='fail'){
    alert(re[3]);

    }
    else{
    alert('未知错误');
    }
    }function sUpdate(){
    var sUp=parseInt($Obj('s1').innerHTML);
    var sDown=parseInt($Obj("s2").innerHTML);
    var sTotal=sUp+sDown;
    var spUp=(sUp/sTotal)*100;
    spUp=Math.round(spUp*10)/10;
    var spDown=100-spUp;
    spDown=Math.round(spDown*10)/10;
    $Obj('sp1').innerHTML=spUp+'%';
    $Obj('sp2').innerHTML=spDown+'%';
    $Obj('eimg1').style.width = parseInt((sUp/sTotal)*55)+'px';
    $Obj('eimg2').style.width = parseInt((sDown/sTotal)*55)+'px';
    }
    实在是不知道哪里错了。php+ajax刚开始研究。谢谢大家!!!
      

  2.   

    我被最后那个路径搞懵了,求救var file=url +'digg.php?et='+et+'&id='+softid;