一只特立独行的猪 一只特立独行的🐷
一只特立独行的🐷
  • 主页
  • web开发
  • 博客笔记
  • 软件工具
  • 随笔杂谈
  • 文章归档
  • 影音欣赏
  • 我的资源
  • 关于我
  • wechat_fill

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

  • 2016-03-31
  • Web开发
  • 评论(12)

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

      使用第三方评论的还好,可以直接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-->

Powered by Wordpress, Theme by Wing-magic
©2023 一只特立独行的🐷 All rights reserved
陕ICP备15006707号-5