EMLOG评论获取QQ资料 | 传递QQ头像

2023-05-10 20:15:21 浏览数 (1)

在网站找了很多,发现很多基本上已经不能使用,所以自己研究了一个,按照以前的代码进行修改。

首先在module.php文件里找到:

代码语言:javascript复制
//blog:发表评论表单
function blog_comments_post($logid,$ckname,$ckmail,$ckurl,$verifyCode,$allow_remark){
    if($allow_remark == 'y'): ?>
    <div id="comment-place">
   <div class="comment-post" id="comment-post">
     <div class="cancel-reply" id="cancel-reply" style="display:none"><a href="javascript:void(0);" onclick="cancelReply()"><i class="icon-forward"></i>&nbsp;取消回复</a></div>
      <h3><i class="icon-chat"></i>发表评论<a name="respond"></a></h3>

(以上内容会按照模板的不同而不同,不过基本相似)在这个下面添加

代码语言:javascript复制
<p>
                <input onblur="qiuye()" type="text" name="u" id="qqinfo"maxlength="20" list="nickname" value="" size="22" tabindex="1" placeholder="必填" required/><label for="author" ob>QQ*</label>
         </p>

继续第二步,在公共JS里面添加以下代码:

代码语言:javascript复制
function qiuye(){var qq_num=document.getElementById("qqinfo").value;
if(qq_num){
if( !isNaN(qq_num)){
$.ajax({
url:"http://www.f162.cn/get_qq_info.php",
type:"get",
data:{qq:qq_num},
dataType:"json",
success:function(data){
document.getElementById("commail").value=(qq_num '@qq.com');
document.getElementById("comurl").value=('http://user.qzone.qq.com/' qq_num);
$('#comment').focus();
if(data==null){
document.getElementById("comname").value=('QQ游客');
}else{
document.getElementById("comname").value=(data[qq_num][6]==""?'QQ游客':data[qq_num][6]);
}
},
error:function(err){
document.getElementById("comname").value=('QQ游客');
document.getElementById("commail").value=(qq_num '@qq.com');
document.getElementById("comurl").value=('http://user.qzone.qq.com/' qq_num);
$('#comment').focus();
}
});
}else{
alert('你输入的好像不是QQ号码');
$('#qqinfo').focus();
}
}else{
alert('请输入您的QQ号');
$('#qqinfo').focus();
}
}

表单需要增加ID信息,给每个input增加ID信息,相信一般看得懂代码的人都会点吧,不会的留言即可。

到了这一步基本上QQ信息已经获取到了,然后就是显示头像的事情了。

module.php找到评论列表里面的:

代码语言:javascript复制
<div class="comment-head">
          <?php if($isGravatar == 'y'): ?>
         <img src="http://q.qlogo.cn/headimg_dl?bs=qq&dst_uin=<?php $a=$comment['mail'];echo str_replace("@qq.com","",$a);?>&src_uin=www.feifeiboke.com&fid=blog&spec=100" alt="avatar" class="avatar" /><?php endif; ?>
          <?php if(strip_tags($comment['poster'])==$name){echo "<span class='sbname'>".$name."</span>";}else{echo "<span class='name'>".$comment['poster']."</span>";} ?><span class="floor"><?php if($i>3) echo '#'.$i.'';elseif($i==3) echo '地板';elseif($i==2) echo '板凳';elseif($i==1)echo '沙发'; ?></span>
      </div>

这边我是修改过了。找到img属性,吧img里面src参数修改成:

代码语言:javascript复制
src="http://q.qlogo.cn/headimg_dl?bs=qq&dst_uin=<?php $a=$comment['mail'];echo str_replace("@qq.com","",$a);?>&src_uin=www.yankj.com&fid=blog&spec=100"

子评论列表相同方式,最新评论改成:

代码语言:javascript复制
src="http://q.qlogo.cn/headimg_dl?bs=qq&dst_uin=<?php $a=$value['mail'];echo str_replace("@qq.com","",$a);?>&src_uin=www.yankj.com&fid=blog&spec=100"

此方法有一个弊端:

邮箱必须是QQ邮箱,否则头像将显示QQ默认头像

Ps:原创很累,虽然第一个不是我发明的,但是基本上很多代码都是自己修改的,转载请留下版权,谢谢。

0 人点赞