微信小程序调用PHP后台接口 解析纯html文本


Posted in Javascript onJune 13, 2017

微信小程序调用PHP后台接口,解析纯html文本,效果图片预览 

微信小程序调用PHP后台接口 解析纯html文本

1、微信js动态传参:

wx.request({
  url: 'https://m.****.com/index.php/Home/Xiaoxxf/activity_detail?a_id='+options.id,//含富文本html
  data: {
   is_detail:1
  },
  method: 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
  header: {
   'Content-Type': 'application/json'
  },
  success: function (res) {
   that.setData({
   Article: res.data //一维数组json编码后对象
   })
   
  /**
   * html解析
  */ 
   var article = that.data.Article;
  console.log("article = " + article);
   WxParse.wxParse('article', 'html', article, that, 5);
   console.log(res.data);
  },
  fail: function (res) { },
  complete: function (res) { },
  }),

其中,options.id是由前一个wxml页面动态传过来的参数。

2、wxParse插件使用:

github地址: https://github.com/icindy/wxParse,版本0.2
解决问题:微信小程序富文本html、md解析组件

1)复制wxParse文件夹到pages同目录
2)在wxml页面引入模板代码:

<import src="../../wxParse/wxParse.wxml"/>
<!--这里可以添加其他的任何wxml代码-->

富文本html框内容:<template is="wxParse" data="{{wxParseData:article.nodes}}"/>

3)在js的page({})里面引入执行文件

// 引入wxParse.js解析文件
var WxParse = require('../../wxParse/wxParse.js');
page({...})

4)在js文件里面解析获取的纯html字符串,注意:这里必须得是字符串(如:'<div>2112</div>'),如果有'\'就要去掉。
示例代码:

wx.request({
  url: 'https://m.*****.com/index.php/Home/Xiaoxxf/activity_detail?a_id='+options.id,//含富文本html
  data: {
   is_detail:1
  },
  method: 'GET', 
  header: {
   'Content-Type': 'application/json'
  },
  success: function (res) {
   that.setData({
   Article: res.data //一维数组json编码后对象,全部数据
   })

  /**
   * html解析
  */ 
   var article = that.data.Article;
  console.log("article = " + article);
   WxParse.wxParse('article', 'html', article, that, 5);
   console.log(res.data);
  },
  fail: function (res) { },
  complete: function (res) { },
  })

3、PHP后台接口(本接口仅做示例,未做安全和过滤校验):

public function activity_detail(){
  $is_detail = I('is_detail');
  if(!empty($is_detail)){   //富文本html文章
   $a_id = I('a_id');
   $a_id = intval($a_id)?$a_id:0;
   if(empty($a_id)){
    $data['code'] = 500;
    $data['msg'] = '抱歉,文章已失效';
    echo json_encode($data);
   }else{
    /* php方法:stripslashes() 将html文章去掉json转移字符\ --xzz0608*/
    //获取结果为指定字段的二维数组,下面截取一维数组
    $data =D()->query("select act_detail from xxf_witkey_activity where is_show = 1 and a_id = ".$a_id." order by a_id desc");
    //var_dump($data);return ;
    $data = $data[0];
    $data = stripslashes(implode(',', $data));
    $data = str_replace(array('src="/data/uploads/','src="data/uploads/'),array('src="http://www.xxiangfang.com/data/uploads/','src="http://www.xxiangfang.com/data/uploads/'),$data);
    echo $data;
   }
  }else{    //普通字段(封面、特色、活动名称)
   $a_id = intval(I('GET.a_id'));
   $data =D()->query("select a_id,act_name,pic_url,introduction from xxf_witkey_activity where is_show = 1 and a_id = ".$a_id." order by a_id desc");
   if($data) 
    $data = $data[0];
    echo json_encode($data);
  }
 }

为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery 日期分离成年月日的代码
May 14 Javascript
浅谈javascript 函数属性和方法
Jan 21 Javascript
Node.js中child_process实现多进程
Feb 03 Javascript
javascript字符串函数汇总
Dec 06 Javascript
原生JS实现拖拽图片效果
Aug 27 Javascript
使用JavaScript脚本判断页面是否在微信中被打开
Mar 06 Javascript
常用原生JS兼容性写法汇总
Apr 27 Javascript
jQuery扩展+xml实现表单验证功能的方法
Dec 25 Javascript
详解利用 Vue.js 实现前后端分离的RBAC角色权限管理
Sep 15 Javascript
详解搭建es6+devServer简单开发环境
Sep 25 Javascript
jquery实现图片无缝滚动 蒙版遮蔽效果
Jan 11 jQuery
利用webpack理解CommonJS和ES Modules的差异区别
Jun 16 Javascript
vue时间格式化实例代码
Jun 13 #Javascript
详解vue slot插槽的使用方法
Jun 13 #Javascript
详解Vue.js分发之作用域槽
Jun 13 #Javascript
Javascript实现从小到大的数组转换成二叉搜索树
Jun 13 #Javascript
微信小程序实现移动端滑动分页效果(ajax)
Jun 13 #Javascript
详解AngularJs路由之Ui-router-resolve(预加载)
Jun 13 #Javascript
微信小程序动态显示项目倒计时效果
Jun 13 #Javascript
You might like
APMServ使用说明
2006/10/23 PHP
PHP中的session永不过期的解决思路及实现方法分享
2011/04/20 PHP
PHP daddslashes 使用方法介绍
2012/10/26 PHP
php+mysql实现简单的增删改查功能
2015/07/13 PHP
详解PHP中cookie和session的区别及cookie和session用法小结
2016/06/12 PHP
Laravel路由研究之domain解决多域名问题的方法示例
2019/04/04 PHP
Javascript技术技巧大全(五)
2007/01/22 Javascript
JavaScript学习历程和心得小结
2010/08/16 Javascript
JS事件Event元素(兼容IE,Firefox,Chorme)
2012/11/01 Javascript
JavaScript时间转换处理函数
2015/04/14 Javascript
jQuery超赞的评分插件(8款)
2015/08/20 Javascript
微信小程序 POST请求(网络请求)详解及实例代码
2016/11/16 Javascript
基于vue-resource jsonp跨域问题的解决方法
2018/02/03 Javascript
深入浅析javascript函数中with
2018/10/28 Javascript
微信小程序非swiper组件实现的自定义伪3D轮播图效果示例
2018/12/11 Javascript
javascript触发模拟鼠标点击事件
2019/06/26 Javascript
[01:41]DOTA2超级联赛专访YYF 称一辈子难忘TI2
2013/05/28 DOTA
[01:07:46]完美世界DOTA2联赛循环赛 Magma vs IO BO2第二场 11.01
2020/11/02 DOTA
Python中for循环和while循环的基本使用方法
2015/08/21 Python
Python的numpy库中将矩阵转换为列表等函数的方法
2018/04/04 Python
Python中的self用法详解
2019/08/06 Python
双立人美国官方商店:ZWILLING集团餐具和炊具
2020/05/07 全球购物
幼儿师范毕业生自荐信
2013/11/09 职场文书
安全资料员岗位职责
2013/12/14 职场文书
费用会计岗位职责
2014/01/01 职场文书
医生进修自我鉴定
2014/01/19 职场文书
财务出纳岗位职责
2014/02/03 职场文书
目标责任书范本
2014/04/16 职场文书
三八红旗手先进事迹材料
2014/05/13 职场文书
说好普通话圆梦你我他演讲稿
2014/09/21 职场文书
村主任“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
三峡大坝导游词
2015/01/31 职场文书
2015年超市收银员工作总结
2015/04/25 职场文书
2015人事行政工作总结范文
2015/05/21 职场文书
Nginx反向代理多个服务器的实现方法
2021/03/31 Servers
MYSQL如何查看操作日志详解
2022/05/30 MySQL