给回复增加投票功能
作者:joys
出处:zbfans.net
性质:原创
阅读:3890
日期:2006-02-15
view_comment.php 代码加在文件上面
<?
$pointmem=explode("||",$c_memo);
$cmt_starpoint=$pointmem[1];
if ($cmt_starpoint==NULL) $cmt_starpoint=0;
$cmt_memo=nl2br($pointmem[0]);
$Star[0]="<font class=ta10>(NOT RATED)</font>";
$Star[1]="<img src=../images/level1.gif>"; //用图片代替, 自己做。
$Star[2]="<img src=../images/level2.gif>";
$Star[3]="<img src=../images/level3.gif>";
$Star[4]="<img src=../images/level4.gif>";
$Star[5]="<img src=../images/level5.gif>";
$date="<span title='".date("Y-m-d-D H-i-s", $c_data[reg_date])."'>".date("Y-m-d", $c_data[reg_date])."</span>"; ?>
所以回复的内容就不是<?=$c_memo?> 而变成 <?=$cmt_memo?> 调用了
正确调用:
投票<?=$Star[$cmt_starpoint]?>
内容<?=$cmt_memo?>
在view_write_comment.php 文件中 头部加入下面的代码
<SCRIPT LANGUAGE="JavaScript">
function givestarpoint() {
document.write.memo.value=document.write.m_memo.value+"||"+document.write.point.value;
}
function AddTag(ch1,ch2){
if(document.write.memo.createTextRange){
document.write.memo.focus();
document.selection.createRange().duplicate().text = ch1 + document.selection.createRange().duplicate().text + ch2;
document.selection.createRange().select();
}
}
</SCRIPT>
在这个文件中使用
<textarea name=m_memo cols="50" rows="5" style="overflow-y:auto; overflow-x:hidden;" class=input onkeyup="return m_memo_onkeyup()"></textarea><br />
<select name="point" onchange="givestarpoint()">
<option value="0" selected>选择投票</option>
<option value="1">一个钻石</option>
<option value="2">二个钻石</option>
<option value="3">三个钻石</option>
<option value="4">四个钻石</option>
<option value="5">五个钻石</option>
</select>
<input type=submit value="确定" class=input onmouseover="givestarpoint()">
进行回复发贴 操作。 修改完毕 显示看本站皮肤。
版块list_main.php调用 投票 调用方法<?include"$dir/starpoint.php"?>
把下面 代码保存成starpoint.php
<?
$cmtpoint=0;
$totalcomment=0;
$myquery=mysql_query("select * from $t_comment"."_$id where parent='$data[no]' order by reg_date desc ");
while($comment_p = mysql_fetch_array($myquery) ) {
$point1=$comment_p[memo];
$point2=explode("||",$point1);
if (intval($point2[1])!=0) {
$cmtpoint=$cmtpoint+intval($point2[1]); $totalcomment++;}
}
$Star[0]="<font class=ta10>(NOT RATED)</font>";
$Star[1]="<img src=../images/level1.gif>";
$Star[2]="<img src=../images/level2.gif>";
$Star[3]="<img src=../images/level3.gif>";
$Star[4]="<img src=../images/level4.gif>";
$Star[5]="<img src=../images/level5.gif>";
//
$userrating="<font class=ta10>(没有投票信息)</FONT>";
if ($totalcomment!=0) {
$cmtpoint=intval($cmtpoint/$totalcomment);
$userrating="".$Star[$cmtpoint]."";
}
echo $userrating;
?>

