当前位置:首页 » Emlog教程 » Emlog评论通过QQ获取昵称资料

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

使用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"

第三步、建立一个文件夹,如qq放入根目录中,在里面建一个文件index.php,代码如下
<?php
header("Content-type: application/json; charset=utf-8"); 
$qq = $_GET['qq'];
$html = file_get_contents('http://r.qzone.qq.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).')';
?>
第四步、加入js代码,代码如下(放在<head></head>之间,代码中的网址路径../go/qq/需要改成你自己创建的,即第三步中创建的路径):
<script>
$(function () {
Lotto = {};
Lotto.comment = function(){
$("#qq").blur(function(){
		 	$('#qq').attr("sl",true);
		 	$("#ajaxloading").html('<img src="[你的网站,必须加http://]/go/qq/loading.gif"><a style="font-size:12px;margin-left:5px;">正在获取QQ信息..</a>');
	    	$.getJSON('[你的网站,必须加http://]/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();
});
</script>
友情提示:朋友网接口失效,已经更改为QQ空间接口,请无法获取资料的朋友请更改第四步的代码。2018-07-04

统一回复评论中提到的几个问题:
1、js你想放在哪里都可以,只要调用出来即可,正常都是放入<head></head>之间
End
关键词: emlog
温馨提示:如果您对本文有疑问,请在本页留言即可!!!
觉得很赞 (25)付款方式
X
付款方式:
  • 微信
  • 支付宝
  • QQ红包

使用微信扫一扫
blogger
    发布日期:2017-05-09   所属类别:Emlog教程   浏览:16953次   评论:40次
    本文地址:http://www.shuyong.net/iemlog/949.html [ 百度已收录 ]
    声明:本页信息由网友自行发布或来源于网络,真实性、合法性由发布人负责,请仔细甄别!本站只为传递信息,我们不做任何双方证明,也不承担任何法律责任。文章内容若侵犯你的权益,请联系本站删除!

留言/评论:◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

填写好QQ号码,任点空白处自动获取

昵称

邮箱

网址

27楼、可爱的叮当猫 [回复该留言]
2019-12-29 15:34
试试
26楼、! [回复该留言]
2019-07-28 13:14
想学习一下
25楼、北柠 [回复该留言]
2018-08-13 12:18
谢谢
24楼、文天 [回复该留言]
2018-04-09 23:49
私密(仅管理员可见)
舍力(博主) [回复该留言]
2018-04-10 00:53
私密(仅管理员可见)
23楼、大表哥博客 [回复该留言]
2018-03-02 08:02
input加上id信息,这里是在哪里加上信息?怎么加上信息?
舍力 [回复该留言]
2018-03-03 08:12
@大表哥博客:评论框
22楼、後╮默落 [回复该留言]
2018-02-22 15:38
请问一直在获取那里不动了,怎么解决呢?
舍力 [回复该留言]
2018-02-23 09:41
@後╮默落:这个是路径出错了,检查一下路径是不是正确
转身後╮默落 [回复该留言]
2018-02-23 14:15
@舍力:请问哪个路径放错了?加入js的那个么?还是新建那个php?
舍力 [回复该留言]
2018-02-24 00:11
@转身後╮默落:按教程做,如果还是不会就找人弄吧。
21楼、康 [回复该留言]
2018-02-19 00:43
js应该添加到什么位置?
舍力 [回复该留言]
2018-02-23 09:44
@康:<head></head>之间
20楼、a&#39;ゞ a [回复该留言]
2018-02-09 16:57
为什么js放了没有反应?
19楼、a&#39;ゞ a [回复该留言]
2018-02-05 14:58
私密(仅管理员可见)
舍力 [回复该留言]
2018-02-06 00:28
私密(仅管理员可见)
18楼、顺心意 [回复该留言]
2017-10-12 13:48
DVDvsdvaaa对对对
17楼、贵族社区 [回复该留言]
2017-10-10 10:01
js加在哪里?
16楼、余生还长 [回复该留言]
2017-10-01 12:26
可以了
a&#39;ゞ a [回复该留言]
2018-01-31 10:38
@余生还长:我的怎么不行
15楼、余生还长 [回复该留言]
2017-10-01 12:17
不知道怎么加入js,老是报错
14楼、Legend [回复该留言]
2017-09-08 08:00
6666厉害了
13楼、出售冷弯弹弓 [回复该留言]
2017-09-06 07:19
厉害了,老铁

个人资料

舍力

博主:舍力

Emlog交流群

    简单的道理,复杂的人生!

博客统计

  • 文章数量:1133篇
  • 文章评论:3520条
  • 总访问量:10300137次
  • 微语数量:81条
  • 在线人数:6人
  • 本站运行:11年2月28天
  • 估计博主很忙,已经很久没更新了!
Q2 虚位以待
Copyright © 2024 舍力博客 版权所有   粤ICP备11021420号
基于宝塔面板,数据存储于阿里云ECS
Powered by emlog / &Author 舍力博客.