TP-常见错误1

 

1、无法加载模块

  FILE: D:\wamp64\www\www.test_shop.com\ThinkPHP\Library\Think\Dispatcher.class.php  LINE: 178

  到/Common/config.php文件,添加以下

   'MODULE_ALLOW_LIST' => array('Home','Admin'), 

2、系统常量无法读取,输出原型,如:__PUBLIC__、__APP__等

  加上U方法:U(__APP__),实在不行只能硬编码绝对路径了

  或者在/Common/Conf/config.php中自定义常量

    'TMPL_PARSE_STRING'  =>array('__PUB__' => '/Public/', )// 更改默认的/Public 替换规则

       存在不正规域名导致解释错误的可能

3、大文本字段需要使用全文索引,但是MYSQL中全文索引不支持中文 ,我们以后会学习SPHINX【全文索引引擎】来优化根据大文本字段查询数据的速度。

4、无法加载控制器

  无法加载控制器:Goods
  错误位置
  FILE: E:\wwwroot\bierte\ThinkPHP\Library\Think\App.class.php  LINE: 101

  可能:1、复制文件后,没把class xxxxController 改为class GoodsController;

     2、文件名xxxxController.class.php没改为GoodsController.class.php,还可能是输入文件名时多了空格GoodsController.class .php

5、MySQL在插入数据时提示: Data truncated for column '

  这是插入的数据不合法造成的,可能是乱码、超出字段长度、非法字符等。

  解决乱码: show variables like 'character%'; 来查看当前数据库的相关编码集。set names XXX;使传入字符编码集与系统本身编码集相同

  详细请参考:http://www.cnblogs.com/sunzn/archive/2013/03/14/2960248.html

      {enum('是','否')}:中文无法插入,页面显示为中文,提交数据包中中文为乱码—>enum('1','0')

6、统一编码

  1. html头:<meta http-equiv="Content-Type" content="text/html; charset=gbk" />  
  2. PHP编辑器:格式->编码
  3. mysql数据库:show variables like 'character%'; set names XXX;

7、mysql数据库5.7.14中datetime类型默认会保留小数点后4位即:2017-06-02 19:18:44.0000

  可通过数据库语句:ALTER TABLE p39_goods MODIFY addtime datetime(0);  2017-06-02 19:18:44

8、在thinkphp中,使用多表查询时,经常会使用到别名,而有时候在一个功能里面会出现使用到两次$where[],若在第二次$where[]时才开始使用表别名,修改了前面的接收变量后,则在第一次使用$where[]中就会出现数据库查询错误

  例如:搜索功能【接收表单数据->翻页功能->取某页数据功能】

在接收表单数据时,$where数组中就使用别名连接字段

如果先在取数据代码中加了别名,在翻页处没加

就会出现如下错误

所以则在翻页的代码处,加上别名

 

 

 

 

 

posted on 2017-06-07 16:12  子轩非鱼  阅读(1243)  评论(0编辑  收藏  举报

导航