第三方登录方式——微信登录

为网站添加微信登录步骤:

1.在微信开放平台,申请注册网站应用(管理中心->网站应用),获得AppID, AppSecret。

2.参考微信登录接入介绍页面,实现接入。

第二步骤详解:

1.为微信登录按钮绑定跳转链接,跳转至“请求CODE”的链接。(若提示“该链接无法访问”,请检查参数是否填写错误,如redirect_uri的域名与审核时填写的授权域名不一致或scope不为snsapi_login。redirect_uri为登录验证文件)

2.在redirect_uri文件中,先通过code获取access_token,和openid(正常情况下,微信扫描第一步的跳转链接中的二维码后,会跳转到redirect_uri,并在URL中添加code参数信息;若微信用户拒绝授权,则没有code信息),再根据access_token和openid获取用户个人信息。

微信页面加载css资源失败

一个普通的web页面,PC访问正常,微信浏览器访问时,偶尔出现加载css文件404错误(可css文件是可以正常访问的,且此现象多刷新几次页面可能就正常了)

可能有效的解决方式:(至少对我来说有效)

加载CSS样式文件时,尽量放在head标签中,尽量在加载js文件前加载css文件

在Discuz中开启“微社区”

开通步骤:

①安装Discuz 3.2及以上版本

②在“应用中心”中安装“微信登录”、“掌上论坛”

③设置“微信登录”,若微信社区状态一直处于“未开通状态”,尝试录入服务器IP地址;若一直处于“开通中”状态,在以下链接中激活,激活后,微社区会处于“已开通”状态。(若仍然无法打开,看‘已开通’状态旁是否有‘重试’链接,点击它既可)。

激活微社区链接:http://www.discuz.net/thread-3586059-1-1.html

微信接口开发——素材管理

在做微信素材管理接口开发时,有以下几点要注意:

①微信要求传递的数据类型为JSON,若数据中存在中文,在使用json_encode时要记得使用第二个参数( json_encode('包含中文的内容', JSON_UNESCAPED_UNICODE); ),否则中文被用unicode编码编译后,会变成一堆’u32…’的字符,使用时会有麻烦(微信不认识被unicode编码的中文)。

备注:只有PHP版本大于等于5.4版时,json_encode才支持第二个参数。

②上传永久性图文素材时,涉及到的图片media_id必须是通过以下‘上传永久性图片类型素材’接口得到的图片media_id,与‘上传临时图片的media_id’不同。

③上传永久性图片类型素材时,接口为‘http://api.weixin.qq.com/…’,官方文档中提到的‘http://file.api.weixin.qq.com/…’不正确。

屏幕快照 2015-04-14 下午6.45.28

 

④上传永久图文信息时,正常情况下,使用接口上传后,在微信后台可以看到图文式的内容,若微信编辑器无法识别html标签(即微信编辑器里都是些代码似的东西),可以考虑使用html_entity_decode()函数。(最后,提交json格式的数据时,使用json_encode(‘素材数组型内容’,JSON_UNESCAPED_SLASHES|JSON_UNESCAPED_UNICODE);)

具体测试方法是,使用var_dump()函数打印出在你的编辑器中录入的内容,若浏览器可以识别html标签,则正确;若不能,则在微信编辑器中也无法识别。对比如下

代码一: var_dump($item['content']);var_dump($item2['content']);exit;

效果一(微信编辑器也无法识别):

 

屏幕快照 2015-05-19 下午6.34.53

代码二: var_dump(html_entity_decode($item['content']));var_dump($item2['content']);exit;

效果二(微信编辑器可识别):屏幕快照 2015-05-19 下午6.37.27

【参考:】

关于json_encode: http://www.laruence.com/2011/10/10/2239.html

微信api——素材管理(上传多媒体文件)

介绍:

使用微信官方提供的API接口,实现上传多媒体文件或素材管理。

PHP实现方式:

备注:注意$file参数,文件的绝对路径前要加符号’@’。

【参考:】

http://mp.weixin.qq.com/wiki/5/963fc70b80dc75483a271298a76a8d59.html

http://www.tuicool.com/articles/JzURz2

微擎开发学习笔记——manifest文件

文件介绍:

manifest文件是模块的配置文件。包含了模块的命名、介绍、后台配置时所看到的菜单项等。

内容介绍:

<application>节点是对该模块的介绍与命名。其中,<identifie>节点的命名要和模块文件夹的名称一致,否则找不到该目录下的图标等文件。

<bindings>节点是后台管理该模块时所能看到的菜单项。其中,<cover>节点对应后台中的“核心功能设置”一栏,默认具有“参数设置”一项;<menu>节点对应后台中的“业务功能菜单”一栏。<menu>节点下的每一个节点由<entry>表示,其中,若参数项direct值为true,点击该菜单时会隐藏左侧的扩展模块导航,默认值为false。

php 工具代码

 

1.将xml转为array

 2.array转xml

继续阅读“php 工具代码”