Emlog添加评论留言时通过QQ获取资料

    博客评论有的采用第三方评论,有的采用内置评论。

      使用第三方评论的还好,可以直接QQ登陆,但是如果是采用内置评论的很多访客都不愿意填写信息,

      因此可能会丢失很多评论。通过php根据用户填写的QQ号码拉取用户的昵称信息,然后自动填写表单,这样用户只需要输入QQ就能实现自动填写了。

      ps:亲测可行,但是鸡肋的地方是此方法获取出来的网址为qq空间,个人觉得没什么卵用,因此,在之前的版本添加后,新版本中又移除了,请慎用!

      具体方式如下:

      首先打开medule.php文件,找到//blog:发表评论表单的函数,在 

      <p class="comment-header"><b>发表评论:</b><a name="respond"></a></p><?php if(ROLE == 'visitor'): ?>
      

      这行下面添加如下php代码: 

      <!--获取QQ号码及用户资料-->
      <?php
      if(isset($_POST['u'])){
      header('Content-Type: text/html; charset=utf-8');
      $ret = '';
      if(preg_match('/\"nickname\":\"([^\"]+)\"/', file_get_contents('http://r.qzone.qq.com/cgi-bin/user/cgi_personal_card?uin='.$_POST['u']), $QQInfo)){
      $ret = $QQInfo[1];
      }
      echo '<script>parent.document.getElementsByName("comname")[0].value = "',$ret,'";</script>';
      echo '<script>parent.document.getElementsByName("commail")[0].value = "',$_POST['u'],'@qq.com";</script>';
      echo '<script>parent.document.getElementsByName("comurl")[0].value = "http://user.qzone.qq.com/',$_POST['u'],'";</script>';
      }else{?>
      <?php
      }
      ?>
      <p>
      <iframe name="hiddenIframe" style="display:none;"></iframe>
      <form action="" method="POST" target="hiddenIframe">
      <p style="color:#FF262E;">您也可以直接填写QQ到下面的输入框中,点击获取用户资料实现自动调用您的QQ资料</p>
      <input placeholder="请输入您的QQ号码" value="" type="text" name="u" />
      <input style="width:90px;" type="submit" value="获取用户资料">
      </form>
      </p>
      <!--获取QQ号码及用户资料 end-->

未经允许不得转载:莫小奈博客 » Emlog添加评论留言时通过QQ获取资料

评论 12

评论前必须登录!

登陆 注册
  1. 无涯书生你这个评论框也太漂亮了哈
  2. 匿名[blockquote]签到成功!签到时间:下午9:51:30,每日打卡,生活更精彩哦~[/blockquote]
  3. 匿名[F2] 来过
  4. 小宝QQ机器人很好
  5. 小明可以的
  6. 幕瑾晨不错
  7. [去死].avi看看
  8. 人杰分分分
  9. 南柯我怎么找不到 medule.php文件
  10. 匿名我试试