夺命雷公狗---微信开发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>

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

原文地址:https://www.cnblogs.com/leigood/p/5246593.html