非插件实现获取评论用户操作系统与浏览器信息

2015年6月1日

Finally

diy emlog教程 评论信息

  1. 首页
  2. emlog
  3. 非插件实现获取评论用户操作系统与浏览器信息
16条评论 收藏

非插件实现获取评论用户操作系统与浏览器信息

    

以前通常都是使用得插件实现,那现在可以不用插件即可实现,如果你是喜欢折腾您的博客的可以来尝试改动一下,下面是改动步骤

首先打开include/model/comment_model.php文件,

找到while ($row = $this->db->fetch_array($ret)) {(即第45行)在这里增加一个获取useragent的信息,代码$row['useragent'] = htmlspecialchars($row['useragent']);

其次在249行的评论提交中增加一个useragent的信息到数据库里,修改代码如下:

function addComment($name, $content, $mail, $url, $imgcode, $blogId, $pid) 
    {
        $ipaddr = getIp();
        $useragent = $_SERVER['HTTP_USER_AGENT'];
        $utctimestamp = time();

        if($pid != 0) {
            $comment = $this->getOneComment($pid);
            $content = '@' . addslashes($comment['poster']) . ':' . $content;
        }

        $ischkcomment = Option::get('ischkcomment');
        $hide = ROLE == ROLE_VISITOR ? $ischkcomment : 'n';

        $sql = 'INSERT INTO '.DB_PREFIX."comment (date,poster,gid,comment,mail,url,hide,ip,pid,useragent)
                VALUES ('$utctimestamp','$name','$blogId','$content','$mail','$url','$hide','$ipaddr','$pid','$useragent')";
        $ret = $this->db->query($sql);
        $cid = $this->db->insert_id();
        $CACHE = Cache::getInstance();

        if ($hide == 'n') {
            $this->db->query('UPDATE '.DB_PREFIX."blog SET comnum = comnum + 1 WHERE gid='$blogId'");
            $CACHE->updateCache(array('sta', 'comment'));
            doAction('comment_saved', $cid);
            emDirect(Url::log($blogId).'#'.$cid);
        } else {
            $CACHE->updateCache('sta');
            doAction('comment_saved', $cid);
            emMsg('评论发表成功,请等待管理员审核', Url::log($blogId));
        }
    }

将以上代码覆盖到function addComment(){}中就可以了

<?php
//获取评论用户操作系统、浏览器等信息
function useragent($info){
    require_once 'useragent.class.php';
    $useragent = UserAgentFactory::analyze($info);
?>
<img src="<?php echo TEMPLATE_URL.$useragent->platform['image']?>">&nbsp;<?php echo $useragent->platform['title']; ?>&nbsp;
<img src="<?php echo TEMPLATE_URL.$useragent->browser['image']?>">&nbsp;<?php echo $useragent->browser['title']; ?>
<?php
}
?>

调用格式:<?php echo useragent($comment['useragent']); ?> 将这段写如到您的评论列表与子评论列表适当位置即可


本文转载自:独狼博客

useragent.zip大小:872KB | 来源:百度网盘
已经过安全软件检测无毒,请您放心下载。
  • 打赏支付宝扫一扫
  • 打赏微信扫一扫
  • 打赏企鹅扫一扫

本文标签: diy emlog教程 评论信息

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

本文链接:非插件实现获取评论用户操作系统与浏览器信息 - https://pjax.cn/em_plzxx_fcj.html

发表评论

发表评论

评论:15条评论

  • 情殇 Lv.1 评论于 河北省邯郸市 电信
    浏览器为啥获取的一直是Mozilla Compatible这个
  • 汐岑博客 Lv.2 评论于 北京市 移动
    没看懂,那压缩包干嘛的
  • 天虎博客 Lv.1 评论于 安徽省六安市 电信
    挺好的。很实用
  • Mrxn Lv.6 评论于 辽宁省抚顺市 联通
    不错不错
  • 小侠 Lv.2 评论于 江苏省苏州市 电信
    php版zblog上的useragent插件
    Finally 评论于 湖南省长沙市 电信
    回复了小侠:emlog有这个插件
    小侠 Lv.2 评论于 江苏省苏州市 电信
    回复了Finally:独狼从php版zbolg上移植过来的- -!
个人中心
今日签到
搜索