文档章节

2015年创业中遇到的技术问题:91-100

FansUnion
 FansUnion
发布于 2015/05/03 01:29
字数 1188
阅读 17
收藏 0
91.PHP日志记录方法.
  error_log("error info");

92.weiphp图灵机器人bug,需要修改3个地方。

问题描述:
启用聊天插件后,发现在微信客户端上不管输入什么内容,回复的都是预设好的内容,而无法使用图灵机器人的功能。
 
问题分析:
经过查看源码,发现 Addons\Chat\Model\WeixinAddonModel.class.php 文件有一处 Bug,
在 function _tuling($keyword) 中,有一个判断图灵返回值的地方:
[mw_shl_code=php,true]  if ($result ['code'] > 40000) {
if ($result ['code'] < 40008 && ! empty ( $result ['text'] )) {
$this->replyText ( '图灵机器人请你注意:' . $result ['text'] );
} else {
return false;
}
}


另外,后面的代码中有两段相同的 case '200000' : 代码,可以删除一段。" 

完成上面的修改,在微信上可以正常进行文字聊天了。但如果输入 新闻,微信还是会报错误。, v+ v: _9 q# O1 n
经过几处测试,发现是在回复图文信息时,没有限制图文的总数量。微信允许一次回复的图文条数好象是10,而图灵返回的新闻是20条,被微信判错。
因为生成图文的地方比较多,我在 Application\Home\Model\WeixinModel.class.php 这个文件里面统一进行修补:

public function replyNews($articles) {
if ( count ( $articles ) > 10 ) {
array_splice($articles, 10); // 丢掉10条以后的内容,以避免微信报错
}
$msg ['ArticleCount'] = count ( $articles );
$msg ['Articles'] = $articles;
 
 
$this->_replyData ( $msg, 'news' );
}

参考资料: http://bbs.weiphp.cn/thread-1976-1-1.html

93.图灵机器人API有3种方式。
a.接入API:
Api 地址:  http://www.tuling123.com/openapi/api
请求方式: http get
数据格式: json

b.接入微信公众平台:
http://www.tuling123.com/openapi/wechatapi?key=  306839dbd81e291718429191767c2070 

c.QQ机器人:下载图灵机器人套件

参考: http://tuling123.com/openapi/cloud/access_api.jsp

在weiphp平台中,原来的例子用的是“接入API”这种方式,“/openapi/api”,
后来因为设置自己的key,把地址改成了“/openapi/wechatapi”,因为觉得咱们是微信公众平台嘛,结果坑了好久。

正解:虽说是微信公众平台,但是后台专门通过php接口调用图灵机器人API的,应该用第1种方式。

94.chrome开发者工具 怎么放到下方。
不知道怎么搞的,console飘到右边去了,切换模式之后,直接在新窗口展示了,很不习惯。
解决办法:长按图上的按钮(Dock to main window), 如果不能成功, 多试几次。
竟然还有这种极其隐含的技巧,尼玛。

95.weiphp微调研bug。
参考资料:[模块BUG] 微调研等表单 不显示用户填写的姓名和手机号
6楼和16楼
/* $member = get_memberinfo ( $vo ['uid'] );
            if (empty ( $member )) {
                $member = get_followinfo ( $vo ['uid']  );
            }
            $vo ['truename'] = $member ['truename'];
            $vo ['mobile'] = $member ['mobile']; */
           // $member = get_memberinfo ( $vo ['uid'] );
            //if (empty ( $member )) {
                $member = get_followinfo ( $vo ['uid']  );
           // }

Addons\Survey\Controller\AnswerController.class.php
第1处:$member = get_followinfo ( $vo ['uid']  );
使用这种方式获得$member。
第2处: $vo ['truename'] = $member ['nickname'];

96.鼠标频繁的插拔,容易出现问题了。
Windows系统注销或重启,很可能就好了,遇到好几次了。

97.微信菜单没有刷新。
a.取消关注,再次关注。
b.等待,有的时候,菜单怎么弄,也没有及时刷新。只能耐心等待了。
通过微信调试工具,去获得微信菜单,才发现菜单已经修改成功了。
但是,通过微信公众号关注获得的菜单,却不是最新的。
郁闷。

98.Apache复制目录有问题。
import org.apache.commons.io.FileUtils;
Apache的copyDirectoryToDirectory(src,to);
"C://js","C://js2/",把js这个目录复制到js2下面,变成了C://js2/js.

import jodd.io.FileUtil;
Jodd的方法以及aspectj的复制文件的方法,就是需要的。
把js目录下的所有文件,复制一份到js2下。
而不是在js2下有个目录叫js。

99.md5密码破解。
从网上找到一个php的系统,安装之后,密码竟然不对,不是安装过程中设置的密码。
根据数据库表中的密码2cb7eba0f22a74e42ff016dfb55cf5a0,去网上破解,发现密码是like1989。
网上开源的代码,说不定就是别人修改过的,有没有后门还真不一定哦。

100.wamp原来内置了xdebug。
运行一个php程序,发现ajax请求里竟然返回了多余的xdebug信息。
无意中,发现waml内置了xdebug,还是很不错的。
只不过,ajax请求这个地方不应该输出错误信息。

这个地方是错误是这样的,mysql_connect函数早php5.5中已经不建议使用了,xdebug一直有输出错误信息。
改用mysql_li的函数就可以了。
  武汉九天鸟-武汉领先的移动互联网系统开发商
  九天鸟问答- http://ask.jiutianniao.com
  九天鸟博客- http://blog.jiutianniao.com
  九天鸟官网-建设中,敬请期待

© 著作权归作者所有

FansUnion
粉丝 60
博文 858
码字总数 825464
作品 0
丰台
高级程序员
私信 提问
【线上沙龙预告】工程师是否应该参与创业?会遇到哪些问题?

[有鱼线上沙龙] 由有鱼App官方主办,旨在通过最实用、最前沿的话题交流,让更多的技术牛人通过轻量线上互动碰撞出技术灵感,搭建“最有质量”的互联网技术族圈子。第一期话题:工程师是否应该...

PatrickWong
2015/07/22
152
0
【线上沙龙预告】工程师是否应该参与创业?会遇到哪些问题?

[有鱼线上沙龙] 由有鱼App官方主办,旨在通过最实用、最前沿的话题交流,让更多的技术牛人通过轻量线上互动碰撞出技术灵感,搭建“最有质量”的互联网技术族圈子。第一期话题:工程师是否应该...

PatrickWong
2015/07/22
2
0
30天,O2O速成攻略【7.19深圳站】

活动概况 时间:2015年07月19日13:30-16:30 地点:深圳腾讯大厦(南山区科技园科技中一路)2楼多功能厅 主办:APICloud、OneAPM、连接科技 网址:www.apicloud.com 费用:免费 活动背景 移动...

API_Cloud
2015/07/04
933
5
30天,O2O速成攻略【7.19深圳站】

活动概况 时间:2015年07月19日13:30-16:30 地点:深圳腾讯大厦(南山区科技园科技中一路)2楼多功能厅 主办:APICloud、OneAPM、连接科技 网址:www.apicloud.com 费用:免费 活动背景 移动...

API_Cloud
2015/07/04
6
0
30天,O2O速成攻略【7.18广州站】

活动概况 时间:2015年07月18日13:30-16:30 地点:贝塔咖啡(新港中路TIT创意园内创意西路07号楼) 主办:APICloud、七牛、洪海网络 网址:www.apicloud.com 费用:免费 活动背景 移动互联网...

API_Cloud
2015/07/05
901
1

没有更多内容

加载失败,请刷新页面

加载更多

协议栈

一、关键技术点分析 不同服务在性能上适用不同协议进行传输,如对接异构第三方服务时,通常选择HTTP/Restful等公有协议;而对于内部不同模块之间的服务调用,一般选择性能较高的二进制私有协...

edwardGe
8分钟前
2
0
新建时隐藏按钮,显示明细时显示

在InitControl()中 if (saTableKeys != null) { rpgDesign.Visible = true; rpgPrint.Visible = true; }......

_Somuns
42分钟前
7
0
【实战演练,拒绝996】-SpringBoot2.x自定义Spring boot Starter

欢迎关注 提升能力,涨薪可待 面试知识,工作可待 实战演练,拒绝996 如果此文对你有帮助、喜欢的话,那就点个赞呗! 前言 是不是感觉在工作上难于晋升了呢? 是不是感觉找工作面试是那么难呢...

ccww_
44分钟前
10
0
SpringBoot从入门到放弃,原理篇-自动配置原理

SpringBoot从入门到放弃,原理篇-自动配置原理 springboot自动配置原理 配置文件能配置的属性参照 自动配置原理 1、springboot启动的时候加载主配置类,开启了自动配置功能@EnableAutoConfig...

有一个小阿飞
今天
13
0
php变量和数据类型

php中的变量 PHP中的变量声明 PHP中的变量的使用 PHP中的数据类型之整型 PHP数据类型之浮点类型和布尔类型 PHP数据类型之字符串类型 PHP数据类型之heredoc和nowdoc的使用 PHP数据类型之复合类...

达达前端小酒馆
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部