Emlog评论通过QQ获取昵称资料

【摘要】使用emlog博客程序朋友有采用第三方评论,也有采用内置评论的,使用第三方评论的还好,可以直接QQ登陆,但是如果是采用内置评论的很多访客都不愿意填写信息,因此可能会丢失很多评论。今天博主分享一篇采用j...--流年博客-分享PHP源码流年音乐台流年影院

  • 内容
  • 相关

使用emlog博客程序朋友有采用第三方评论,也有采用内置评论的,使用第三方评论的还好,可以直接QQ登陆,但是如果是采用内置评论的很多访客都不愿意填写信息,因此可能会丢失很多评论。今天博主分享一篇采用js根据用户填写的QQ号码拉取用户的昵称信息,然后自动填写表单,这样用户只需要输入QQ就能实现自动填写了。代码以默认模板为例。

第一步、我们要确认模板是否有加载jquery,emlog默认jquery代码如下(放入<head></head>之间),如果有加载的请自动忽略此步。

<script src="<?php echo BLOG_URL;?>include/lib/js/jquery/jquery-1.7.1.js" type="text/javascript"></script>

第二步、找到模板文件module.php中的

<input type="hidden" name="gid" value="<?php echo $logid; ?>" />

在上面代码的后面加入代码

<input id="qq" type="text" name="qq" maxlength="49" placeholder="填入qq自动获取信息" value="" size="22" tabindex="0"><div id="error"></div><div id="ajaxloading"></div>

然后在每一个input加上id信息,例如: name="commail" 后面添加 id="commail"
第三步、加入js代码,代码如下(代码中的网址路径../go/qq/需要改成你自己创建的,即第四步中的路径):

$(function () {
Lotto = {};
Lotto.comment = function(){
$("#qq").blur(function(){
             $('#qq').attr("sl",true);
             $("#ajaxloading").html('<img src="../go/qq/loading.gif"><a style="font-size:12px;margin-left:5px;">正在获取QQ信息..</a>');
            $.getJSON('../go/qq/?qq='+$('#qq').val()+'&callback=?', function(q){
                if(q.name){
                    $('#comname').val(q.name);
                    $('#commail').val($('#qq').val()+'@qq.com');
                    $('#comurl').val('http://user.qzone.qq.com/'+$('#qq').val());
                    $('#qq').attr("disabled",false);
                    $("#ajaxloading").hide();
                }else{
                    $("#ajaxloading").hide();
                    $("#error").html('qq账号错误').show().fadeOut(4000);
                       $('#qq').attr("sl",false);
                }
            });
        });
    
}
Lotto.run = function(){this.comment();};
Lotto.run();
});

第四步、建立一个文件夹,如qq放入根目录中,在里面建一个文件index.php,代码如下

<?php
header("Content-type: application/json; charset=utf-8");
$qq = $_GET['qq'];
$html = file_get_contents('http://r.pengyou.com/fcg-bin/cgi_get_portrait.fcg?uins='.$qq);
$nic = explode(',',$html);
$name = trim(mb_convert_encoding($nic[6], "UTF-8", "GBK"),'"');
$img = file_get_contents('http://ptlogin2.qq.com/getface?appid=1006102&uin='.$qq.'&imgtype=3');
preg_match('/pt.setHeader\((.*?)\);/',$img,$picc);
$pic = json_decode($picc[1]);
$json['name'] = $name;
$json['pic'] = $pic->$qq;
echo $_GET['callback'].'('.json_encode($json).')';
?>

二维码加载中……

本文标签:

本文日期:

版权声明:若无特殊注明,本文皆为《流年》原创,转载请保留文章出处。

本文链接:Emlog评论通过QQ获取昵称资料 - http://www.lnbk1.com/emlog/rmqqpl.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

评论

5条评论
  1. avatar

    6345634 Lv.1 Chrome 55.0.2883.87 Chrome 55.0.2883.87 Windows 7 Windows 7 回复

    汇集了就好了看见

    四川省南充市 电信

    1. avatar

      我姓刘。 Lv.1 Chrome 53.0.2785.104 Chrome 53.0.2785.104 Windows 7 x64 Edition Windows 7 x64 Edition 回复

      表情 测试看看

      山东省临沂市郯城县 电信

      1. avatar

        王 某 人 ǐ Lv.1 Chrome 49.0.2623.87 Chrome 49.0.2623.87 Windows 7 x64 Edition Windows 7 x64 Edition 回复

        很有帮助

        天津市 深圳市腾讯计算机系统有限公司联通节点

        1. avatar

          大表哥 Lv.1 QQbrowser QQbrowser Android 4.0.4 Android 4.0.4 回复

          哇,说的好有技术感,可是有些地方我实在了解不了诶 表情

          湖南省株洲市 电信

          1. avatar

            美股指数 Lv.1 Firefox 50.0 Firefox 50.0 Windows Windows 回复

            大力顶起。。。。

            浙江省金华市 电信