zoukankan      html  css  js  c++  java
  • 小程序显示数据

    1.当遍历是一条数据,取数据是个数据需要遍历,只需要取

    base.y_slide进行遍历即可。

    $base['y_slide'] = unserialize($base['y_slide']);
    $num = count($base['y_slide']);
    for($i = 0; $i < $num; $i++) {
    $base['y_slide'][$i]=$_W['attachurl'].$base['y_slide'][$i];
    }

    2.遍历的是多条数据

    foreach ($item as &$values) {
         $values['k_slide'] = unserialize($values['k_slide']);
         $num = count($values['k_slide']);
        for ($i = 0; $i < $num ; $i++) {
                $values['k_slide'][$i]=$_W['attachurl'].$values['k_slide'][$i];
    }
    }

    3.传数据给下一个页面传id

    data-k_id='{{item.k_id}}'
    点击事件   传id
    departmentDetailClick: function(e) {
     
    console.log(e.currentTarget.dataset.k_id)
    var k_id = e.currentTarget.dataset.k_id
    wx.navigateTo({

    url: '/hyb_zylxc/department_detail/department_detail?k_id=' + k_id,
    })
    },
     
    下一个页面  接收id
    onLoad: function(options) {
    var that = this;
    var id = options.k_id;
    that.getKeshixq(id);
    // that.getIntroduction(id);
    },
     
    getKeshixq:function(id){
    var that = this;
    console.log(id)
    app.util.request({
    'url': 'entry/wxapp/Keshijianjie',
    data: {
    k_id: id
    },
    success: function (res) {

    console.log(res.data.data)
    that.setData({
    keshi: res.data.data,
    })
    wx.setNavigationBarTitle({ title: '科室简介' });
    WxParse.wxParse('article', 'html', res.data.data.k_jianjie, that, 5);//百度编辑器去除非法字符显示数据

    },
    //百度编辑器显示数据  article
    <view class="wxParse bgcf bsbb p30 fs26 c6 bgcf">
    <template is="wxParse" data="{{wxParseData:article.nodes}}"/>
    </view>
     
    4.   遍历显示数据   下拉 点击选择
    <picker name="u_consultation" bindchange="zhuanjiachange" value="{{index}}" range="{{zjarrs}}">
    <view wx:if="{{index == ''}}" class='fs24 c9 ml100'>
    请选择要预约的专家
    </view>
     
    <view wx:else class="fs26 c6 ml100">
    <!-- <view wx:for="{{expert}}" wx:for-item="items"> -->
    <!-- {{zjarrs[index]}} -->
    <input name="u_consultation" value='{{zjarrs[index]}}' disabled='true'/>
    <!-- </view> -->
    </view>
    </picker>
     
     
    onLoad: function (options) {
    var that = this;
    that.bindPickerChange();
    },
     
     
    bindPickerChange: function () {
    var that =this;
    app.util.request({
    'url': "entry/wxapp/YuZhuanjia",
    success:function(e){
    var arrs = e.data.data;
    var zjarrs = [];
    for (var i = 0; i < arrs.length;i++){
    zjarrs.push(arrs[i].z_name);
    }
    that.setData({
    expert: e.data.data,
    zjarrs: zjarrs
    })
    }
    })
    },
    zhuanjiachange:function(e){
    console.log('picker发送选择改变,携带值为', e.detail.value)
    console.log(this.data.expert);//预约专家
    this.setData({
    index:e.detail.value
    })
    },
     
     
    5.地图
     
    <view data-longitude="{{longitude}}" data-latitude="{{latitude}}" class='bdl2 df fdc w50 aic jcc bdbb pt30 pb30' bindtap='Position'>
     
    //来院路线
    choosePosition: function() {
    var that = this;
    app.util.request({
    'url': 'entry/wxapp/Base',
    success: function (res) {
    console.log(res.data.data);
    that.setData({
    base: res.data.data,
    latitude:res.data.data.latitude,
    longitude:res.data.data.longitude
    })
    },
    fail: function (err) {
    console.log(err)
    },
    });
    },
    Position:function(e){
    var latitude = e.currentTarget.dataset.latitude
    var longitude = e.currentTarget.dataset.longitude
    console.log(latitude, longitude);
    wx.openLocation({
    latitude: parseFloat(latitude),
    longitude: parseFloat(longitude),
    scale: 28
    })
    },
     
    6.点击切换
    <scroll-view class='bsbb pl30 bgcf bdb2' scroll-x style='white-space:nowrap;'>
    <block wx:for="{{caseArr}}" wx:key="unique">
    <text data-index="{{index}}" class='fs24 dib bsbb h80 mr50 {{current == index?"c bdb4":"c9"}}' bindtap='huoqu'>{{item.j_name}}</text>
    </block>
    </scroll-view>

    <!-- <my-sku-page data-index="{{pIndex[index]}}" wx:key="unique" binddetailBtn="checkClick" style="display:{{current == pIndex[index]?'block':'none'}}" >
     
    </my-sku-page> -->

    <!-- <view wx:for="{{caseArr}}" wx:for-item="items"> -->
    <scroll-view class="bsbb pl30 df pt30 pb30 bgcf h310" scroll-x style='white-space:nowrap;'>
    <block wx:for="{{caseArr[current].binzhen}}" wx:key="unique">
    <view data-j_id="{{item.j_id}}" class='dib tac mr15' bindtap="checkClick">
    <view>
    <image mode='aspectFill' style='178rpx;height:178rpx;' src='{{item.j_thumb}}' class='db'></image>
    </view>
    <text class='db fs26 c9 mt20'>{{item.j_name}}</text>
    </view>
    </block>
    </scroll-view>
     
     
    current: 0,
     
    huoqu: function(e) {
    var that = this
    console.log(e)
    var index = e.currentTarget.dataset.index
    var current = index;

    that.setData({
    current: current
    })
     
    7.分享转发
    onShareAppMessage: function() {
    //分享
    // console.log("分享")
    var that = this
    // console.log("分享1")
    return {
    title: '双十一来了瞧一瞧看一看喽',
    path: '/hyb_zylxc/index/index',
    success: res => {
    // console.log("分享2")
    // console.log("分享成功" + res)
    console.log(res.shareTickets[0]);
    // shareTicket 是获取转发目标群信息的票据,只有拥有 shareTicket 才能拿到群信息,用户每次转发都会生成对应唯一的shareTicket 。
    // 如果这里有 shareTickets,则说明是分享到群de 如果没有则是转发到好友的
    wx.getShareInfo({
    shareTicket: res.shareTickets[0],
    success: res => {
    that.setData({
    isShow: true
    })
    console.log(that.setData.isShow)
    },
    fail: function (res) { console.log(res) },
    complete: function (res) { console.log(res) }
    })
    },
    fail: function (res) {
    console.log("分享失败" + res)
    }
    }
     
    }
     
    8.检索事件选择,选择男装的上衣
    <picker bindchange="bindDepartmentChange" value="{{index}}" range="{{introduction}}" class="w33">
    <view wx:if="{{index == ''}}" class='df jcc aic fs28 c9'>
    <text>全部科室</text>
    <image mode='widthFix' style='27rpx' src='../images/down.png' class='ml15'></image>
    </view>
    <view wx:else class='df jcc aic fs28 c9 '>
    <text>{{introduction[index]}}</text>
    <!-- <input name="u_consultation" value='{{introduction[index]}}' disabled='true' /> -->
    <image mode='widthFix' style='27rpx' src='../images/down.png' class='ml15'></image>
    </view>

    </picker>
     
    下标:data :{
        
               index: "",
    }
     
    that.getYuZhuanjiajiansuo('', '', '');//专家检索
     
    选择显示
    bindPickerChange: function () {
    var that = this;
    app.util.request({
    'url': "entry/wxapp/Keshi",
    success: function (e) {
    console.log(e.data.data);
    var arrs = e.data.data;
    var introduction = [];
    for (var i = 0; i < arrs.length; i++) {
    introduction.push(arrs[i].k_name);
    }
    that.setData({
    keshi: e.data.data,
    introduction: introduction
    })
    }
    })
    },
    //科室
    bindDepartmentChange: function (e) {
    var that = this;
    that.setData({
    index: e.detail.value//下标
    })
    var keshi = that.data.introduction[e.detail.value];
    var zhicheng = that.data.zhicheng[that.data.appellation];
    var shanchang = that.data.specialityArr[that.data.speciality]
    if(zhicheng==undefined){
    var zhicheng = '';
    }
    if (shanchang==undefined){
    var shanchang = "";
    }
    that.getYuZhuanjiajiansuo(keshi, zhicheng, shanchang);
    },
     
     
     
    getYuZhuanjiajiansuo:function(keshi,zhicheng,shanchang){
    var that = this;
    app.util.request({
    'url': 'entry/wxapp/YuZhuanjiajiansuo',
    'data':{
    keshi: keshi,
    zhicheng:zhicheng,
    shanchang: shanchang
    },
    success: function (res) {
    console.log(res.data.data);
    that.setData({
    expert: res.data.data,
     
    })
    },
    fail: function (err) {
    console.log(err)
    },
    });
    },
     
     

    //专家检索
    public function doPageYuZhuanjiajiansuo(){
    global $_W,$_GPC;
    $uniacid = $_W['uniacid'];
    $keshi = $_REQUEST['keshi'];
    $zhicheng = $_REQUEST['zhicheng'];
    $shanchang = $_REQUEST['shanchang'];
    $where = " where uniacid=:uniacid";
    if (!empty($keshi)) {
    $where.=" and keshi=:keshi";
    $data[":keshi"] = $keshi;
    }
    if (!empty($zhicheng)) {
    $where.=" and z_zhicheng=:zhicheng";
    $data[":zhicheng"] = $zhicheng;
    }
    if (!empty($shanchang)) {
    $where.=" and z_shanchang like '%$shanchang%'";    //很多不止一个,
    }
    $data[':uniacid'] = $uniacid;
    $sql = "SELECT * FROM ".tablename("hyb_ylxc_zhuanjia").$where;
    // $sql = "SELECT * FROM ".tablename("hyb_ylxc_zhuanjia")."where uniacid=:uniacid",array(":uniacid"=>$uniacid);
    $list = pdo_fetchall($sql,$data);
    if (!empty($list)) {
    foreach ($list as &$value) {
    $value['z_thumbs'] = $_W['attachurl'].$value['z_thumbs'];
    $base = pdo_fetch("SELECT * FROM ".tablename("hyb_ylxc_base")." where uniacid=:uniacid",array(":uniacid"=>$uniacid));
    $value['yiyuan'] = $base['y_title'];

    }

    }
    return $this->result(0,"success",$list);
    }

    9.用户授权

    //获取用户信息
    public function doPageTyMember() {
    global $_GPC, $_W;
    $uniacid = $_W['uniacid'];
    $openid = $_REQUEST['openid'];
    // $openid = "oiw7_0FlOxmb4SmYHwT7K0rBdCnY";
    $item['u_name'] = $_GPC['u_name'];
    $item['u_thumb'] = $_GPC['u_thumb'];
    $item['uniacid'] = $uniacid;
    if ($openid) {
    $res = pdo_update('hyb_ylxc_userinfo', $item, array('openid' => $openid));
    }
    if (!$res['u_id']) {
    $res = pdo_fetch('SELECT `u_id` FROM ' . tablename('hyb_ylxc_userinfo') . " where `openid`='{$openid}'");
    }
    $message = 'success';
    $errno = 0;
    return $this->result($errno, $message, $item);
    }
    public function doPageGetUid() {

    global $_GPC, $_W;
    $uniacid = $_W['uniacid'];
    $result = pdo_fetch('SELECT * FROM ' . tablename('hyb_ylxc_key') . " where `uniacid`='{$uniacid}'");
    // $APPID = "wxbcf230862644aa93";
    $APPID = $result['appid'];
    $SECRET = $result['appsecret'];
    // $SECRET = "1ad4414c9da569ca333d216cc6d0f643";
    $openid = $_REQUEST['openid'];
    $openid = "oiw7_0FlOxmb4SmYHwT7K0rBdCnY";
    $code = trim($_GPC['code']);
    $url = "https://api.weixin.qq.com/sns/jscode2session?appid={$APPID}&secret={$SECRET}&js_code={$code}&grant_type=authorization_code";
    $data['userinfo'] = json_decode($this->httpGet($url));
    $openid = $data['userinfo']->openid;
    $item['openid'] = $openid;
    if ($openid) {
    $res = pdo_fetch('SELECT `u_id` FROM ' . tablename('hyb_ylxc_userinfo') . " where `openid`='{$openid}'");
    if (!$res['u_id']) {
    $res = pdo_insert('hyb_ylxc_userinfo', $item);
    }
    }
    $data['openid'] = $openid;
    $message = 'success';
    $errno = 0;
    return $this->result($errno, $message, $data);
    }

    bindGetUserInfo: function(e) {
    var that = this;
    console.log(e);
    console.log(e.detail.userInfo)
    wx.login({
    success: res => {
    // ------ 获取凭证 ------
     
    var code = res.code;
    console.log(code);
    if (code) {
    // console.log('获取用户登录凭证:' + code);
    // ------ 发送凭证 ------
    app.util.request({
    "url": "entry/wxapp/GetUid",
    data: {
    code: code
    },
    method: 'POST',
    header: {
    'content-type': 'application/json'
    },
    success: function(res) {
    console.log(res);
    var openid = res.data;
    if (res.statusCode == 200) {
    // console.log("获取到的openid为:" + res.data)
    // that.globalData.openid = res.data
    wx.setStorageSync('openid', res.data),
    wx.setStorage({
    key: 'userinfo',
    data: true,
    }),
    that.setData({
    userinfo: true
    })
    //设置用户信息
    wx.getUserInfo({
    success: res => {
    console.log(res);
    var u_name = e.detail.userInfo.nickName;
    var u_thumb = e.detail.userInfo.avatarUrl;
    console.log(u_name);
    console.log("aa" + res)
    console.log("aa"+res.errMsg)
    wx.setStorageSync("avatar", res.userInfo.avatarUrl)
    if (res.userInfo.nickName != wx.getStorageSync("nickName")) {
    app.util.request({
    "url": 'entry/wxapp/TyMember',
    data :{
    u_name:u_name,
    u_thumb:u_thumb,
     
    },
    method: 'POST',
    header: {
    'content-type': 'application/json'
    },
    success: function (res) {
    console.log(res);
    if (res.statusCode == 200) {
    // console.log("获取到的openid为:" + res.data)
    // that.globalData.openid = res.data
    wx.setStorageSync('u_name', res.data)
    wx.getStorageSync('u_thumb', res.data)
    } else {
    console.log(res.errMsg)
    }
    },
    })
    }
    }
    })
    } else {
    console.log(res.errMsg)
     
    }
    }
    })
    }
     
    },
    fail: function (err) {
    console.info(err.errMsg);
    wx: showModal({
    title: '警告',
    cancelText: '不授权',
    confirmText: '授权',
    confirmColor: '#37c31a',
    content: '若不授权微信登录,则无法使用XXXXXX;点击重新获取授权,则可重新使用;' +
    '若点击不授权,将无法使用便捷服务。',
    success: function (res) {
    if (res.confirm) {
    console.log('用户点击确认');
    wx.openSetting({
    success: res => {
    if (res.authSetting['scope.userInfo']) {
    wx.getUserInfo({
    success: res => {
    console.log('用户同意授权' + res.userInfo.nickName)
    app.util.request({
    'url': 'entry/wxapp/TyMember',
    data: {
    u_name: u_name,
    u_thumb: u_thumb
    },
    method: 'POST',
    header: {
    'content-type': 'application/json'
    },
    success: function (res) {
    console.log(res);
    if (res.statusCode == 200) {
    // console.log("获取到的openid为:" + res.data)
    // that.globalData.openid = res.data
    wx.setStorageSync('openid', res.data)
    } else {
    console.log(res.errMsg)
    }
    },
    })
    }
    })
    } else {
    console.info('再次不允许');
    }
    }
    })
    } else if (res.cancel) {
    console.log('弹出框用户点击取消')
    }
    }
    })
    }
    })
     
    },

    private function httpGet($url) {
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_TIMEOUT, 500);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl, CURLOPT_URL, $url);
    $res = curl_exec($curl);
    curl_close($curl);
    return $res;
    }

     

    10   查询男女  数据库是1  0,页面显示男女

    $sex = $data["h_sex"];
    if($sex==1){
    $data['h_sex'] = "女";

    }
    else{
    $data['h_sex'] = "男";
    }

    11.   

      

  • 相关阅读:
    Xhprof分析php性能
    Xhprof graphviz Warning: proc_open() [function.proc-open]: CreateProcess failed, error code 解决方法
    使用xhprof会在nginx下报502 Bad Gateway错误
    springbooot2 thymeleaf 配置以及加载资源文件。Cannot find template location: classpath:/templates/ (please add some templates or check your Thymeleaf configuration)
    springboot用户登陆密码两次md5加密
    SpringBoot2.0 redis生成组建和读写配置文件
    spring2.0:The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone. You must configure either th
    SpringBoot 2.0 报错: Failed to configure a DataSource: 'url' attribute is not specified and no embe
    秋季学期总结
    寒假作业3:抓老鼠啊~亏了还是赚了?
  • 原文地址:https://www.cnblogs.com/isuansuan/p/9861390.html
Copyright © 2011-2022 走看看