• 夺命雷公狗---微信开发45----获取用户基本信息接口(2)


    刚才的数据都还没入库,所以现在我们开始将数据入库,首先我们创建一张“userinfo”的数据表,如下所示:

    我们来对get_userinfo.php来进行加工一下呗,嘻嘻,代码如下:

    <?php
        header("Content-Type:text/html;charset=utf-8");
        require_once "get_token.php";
        require_once "common.php";
        //获取指定用户的openid也就是主文件里面的$fromUsername
        $fromUsername = "oB1_6tzeHj-KG7kL8Thmu6VcF2BM";
        $url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token={$access_token}&openid={$fromUsername}";
        //发送请求
        $res = http_request($url,null);
        $res = json_decode($res);
        //获取我们所需要的各种信息
        $nickname = $res->nickname;//用户昵称
        $sex = $res->sex;//性别
        $country = $res->country;//国家
        $province = $res->province;//省份
        $city = $res->city;//城市
        $address = "{$country}{$province}{$city}";
        $subscribe_time = $res->subscribe_time;//用户关注的时间
        $sjc = date('Y-m-d-H:i:s');
        $groupid = $res->groupid;//用户所在的分组ID
        $headimgurl = $res->headimgurl;//用户头像
        //利用substr函数获取小头像地址 0代表从第0个开始获取,-1代表去掉最后一个
        $samll_head_imgurl = substr($headimgurl,0,-1).'132';
        //设置一个空性别
        $sexs = '';
        if($sex == '1'){
            $sexs = '男';
        }else if($sex == '2'){
            $sexs = '女';
        }else{
            $sexs = '他不说,估计是人妖';
        }
        
        echo "<h1>报告老大您要追查的通缉犯</h1><br />";
        echo "<table border='1'>";
        echo "<tr>
                <th>昵称</th>
                <th>性别</th>
                <th>地址</th>
                <th>观众时间</th>
                <th>小头像</th>
            </tr>";
        echo "
            <tr>
                <td>{$nickname}</td>
                <td>{$sexs}</td>
                <td>{$address}</td>
                <td>{$sjc}</td>
                <td><img src='".$samll_head_imgurl."'></td>
            </tr>
        ";
        echo "</table>";
        echo "<br />";
        echo "<br />";
        echo "<br />";
        
        $connect = mysql_connect('localhost','root','root') or die('数据库连接失败');
        mysql_select_db('wxdb',$connect);
        mysql_query('set names utf8');
        $sql = "insert into userinfo (id,openid,nickname,address,zctime,headimgurl,sex,mes) values(null,'{$fromUsername}','{$nickname}','{$address}','{$subscribe_time}','{$samll_head_imgurl}','{$sex}','留条言呗!!!')";
        mysql_query($sql);
        
        echo "保存成功";

    然后再访问下get_userinfo.php,看到下面的保存成功,心里有点小激动,

    然后我们再进数据库看下是否成功,

    YES果然入库了,这只是在测试而已,如果是真的是项目中的那么我们往往是要写到index.php主文件里面的

    case 'event':
                            //用户未关注时,进行关注后的事件推送
                            if($postObj->Event == 'subscribe')
                            {
                            }

    应该都是关注后直接入库。。。

    现在能将突然存进数据库里面了,那么我们再来写个show_users.php的文件来让他进行遍历出来呗,我们用第公众平台营销咨询系统,也就35课里面的代码来套下即可,代码如下所示:

    <?php
        //链接数据库
        $connect = mysql_connect('localhost','root','root');
        mysql_select_db('wxdb',$connect);
        mysql_query('set names utf8');
        //分页开工咯,先取个别名counts
        $sql = "select count(*) as counts from userinfo";
        $res = mysql_query($sql);
        $row = mysql_fetch_assoc($res);
        //这里的$row_num是总的咨询条数
        $row_num = $row['counts'];
        //我们规定每页显示5条记录
        $page_size = 5;
        //计算总页数
        $page_count = ceil($row_num/$page_size);
        //接收当前用户点击的是第几页
        $page_num = $_GET['page_num'];
        //判断$page_num是否为空,如果是空的默认给他一个1
        if(empty($page_num)){
            $page_num = 1;
        }
        //计算从那条记录开始获取
        $begin = ($page_num-1)*$page_size;
        $sql = "select * from userinfo order by id desc limit {$begin},{$page_size}";
        $info_res = mysql_query($sql);
    ?>
    <!doctype html> 
    <html> 
        <head> 
            <meta charset="utf-8">
            <title>公众平台用户信息</title>
            <meta name="viewport" content="width=device-width,height=device-height,inital-scale=1.0,maximum-scale=1.0,user-scalable=no;">
            <meta name="apple-mobile-web-app-capable" content="yes">
            <meta name="apple-mobile-web-app-status-bar-style" content="black"> 
            <meta name="format-detection" content="telephone=no"> 
            <link href="./jquery.mobile-1.0.min.css" rel="stylesheet" type="text/css"> 
            <script src="./jquery-1.6.4.min.js" type="text/javascript"></script> 
            <script src="./jquery.mobile-1.0.min.js" type="text/javascript"></script> 
        </head> 
        <body>
            <div data-role='page' id='page3'>
                <div data-role='header'>
                    <h1>公众平台用户信息</h1>
                </div>
                
                <div data-role='content'>
                    <ul data-role='listview'>
                        <?php
                            $row = array();
                            while($row = mysql_fetch_assoc($info_res)){ 
                        ?>
                            <li height='200px'>
                                昵称:<?php echo $row['nickname']; ?><br />
                                地址:<?php echo $row['address']; ?>
                                <p class='ui-li-aside'><img width='40px' src='<?php echo $row['headimgurl']; ?>'></p>
                            </li>
                        <?php } ?>
                    </ul>
                </div>
                
                <!--分页的按钮开始-->
                <div data-role="controlgroup" data-type="horizontal">
                <?php
                    if($page_num!=1 && $page_num>1){ ?>
                        <a href="/show_users.php?page_num=<?php echo $page_num-1; ?>" data-role="button">上一页</a>
                    <?php } ?>
                <?php
                    if($page_count > $page_num){ ?>
                        <a href="/show_users.php?page_num=<?php echo $page_num+1; ?>" data-role="button">下一页</a>
                    <?php } ?>
                </div>
                <!--分页的按钮结束-->
            </div>
        </body> 
    </html>

    然后对对她进行访问即可即可,如下图所示:

  • 相关阅读:
    MySQL------索引
    分组数据
    聚集函数
    Web的Java开发基础分享——学生信息管理系统(二)
    Web的Java开发基础分享——学生信息管理系统(一)
    shiny酷酷的第一篇CSDN博客
    vue2.0.js
    vue1.0.js的初步学习
    layui新手使用
    前端兼容性的一些问题
  • 原文地址:https://www.cnblogs.com/leigood/p/5246593.html
Copyright © 2020-2023  润新知