EasyScholar bug

来源:互联网 发布:美国经济评论数据公开 编辑:程序博客网 时间:2024/06/06 15:44

自2014下半年以来对Easyscholar系统debug心得总结:

1. 最容易出的问题:路径问题,本地路径“D:/...“,上传后没有全部改为linux路径,导致程序挂掉

2. spell.php文件,漏写了<?php开头,导致文件格式不正确,原本的PHP代码被当做html内容输出,功能出错

3. 输出日志时,不同的页面获取同一个日志文件的读写权会失败,导致后面的日志都打不出来

4. debug时,先打开databaseModel的debug_enable标志,便于观察数据库操作,确定数据库问题

5. 在本地测试成功的代码,上传到服务器上就不行,一、检查上传的代码是否含有本地windows路径,二、检查数据库配置是否正确,是否是连接本地数据库而非服务器上的数据,三、检查sql语句,由于Linux大小写敏感,一定要注意sql操作是否报错,四、检查本地数据库与服务器上的数据库是否一致

6. 打日志时,如果不确定是哪个文件中打出来的东西,就在日志前把文件名和路径附上

7.如果是文件写不进去,要查看是否是创建文件后忘记加权限,或者是文件夹没有加权限

8.使用json传数据,格式必须是名值对,可以在浏览器中看到{response:true}之类的,如果返回值前面有代码,如不小心加进去的空格,html代码等,sldfowi{response:true},此时前面那段乱入的代码会影响json格式的解析,导致返回值解析不出来,这种情况下应该检查代码中,如前文2提到的漏掉某些标签,或者加了无意义的空行等,都可能导致出错

9. 有些页面跳转到另一个页面,如manage.php页面包含了很多其他php页面,而retrival_paper.php只是其中跳转的一部分,跳转时不容易捕捉中间的变量和状态,此时可以考虑把跳转方式改成get,然后直接输入retrival_paper.php?parameter=...这样的URL,来调试,这样就可以使用echo,可以把sql和错误信息直接打印出来

0 0