# 常见问题
# 开启假墙防御后搜索页筛选页的选项参数如何高亮展示
为了防御假墙我们把url参数编码方式或空白方式处理掉了。关闭假墙防御就不会出现这个问题。
那么原来使用搜索页面、分类筛选页面的模板可能需要做有些简单调整才能正确显示筛选高亮。
在模板头部插入定义变量(在调用$pp变量之前插入就可以)
{php}$pp = mac_param_url(); {/php}
然后把原来判断高亮的代码修改一下即可,把$param
替换为 $pp
即可, 来看例子。
未修改的地区筛选:
<a {if condition="$param['area'] eq ''"} class="current" {/if} href="{:mac_url_type($obj,['area'=>'','lang'=>$param['lang'],'year'=>$param['year'],'level'=>$param['level'],'letter'=>$param['letter'],'state'=>$param['state'],'tag'=>$param['tag'],'class'=>$param['class'],'order'=>$param['order'],'by'=>$param['by'] ],'show')}">全部
{empty name="$obj.type_extend.area"}
{maccms:foreach name=":explode(',',$obj.parent.type_extend.area)" id="vo2" key="key2"}
<a {if condition="$param['area'] eq $vo2"} class="current" {/if} href="{:mac_url_type($obj,['area'=>$vo2,'lang'=>$param['lang'],'year'=>$param['year'],'level'=>$param['level'],'letter'=>$param['letter'],'state'=>$param['state'],'tag'=>$param['tag'],'class'=>$param['class'],'order'=>$param['order'],'by'=>$param['by'] ],'show')}">{$vo2}
{/maccms:foreach}
{else /}
{maccms:foreach name=":explode(',',$obj.type_extend.area)" id="vo2" key="key2"}
<a {if condition="$param['area'] eq $vo2"} class="current" {/if} href="{:mac_url_type($obj,['area'=>$vo2,'lang'=>$param['lang'],'year'=>$param['year'],'level'=>$param['level'],'letter'=>$param['letter'],'state'=>$param['state'],'tag'=>$param['tag'],'class'=>$param['class'],'order'=>$param['order'],'by'=>$param['by'] ],'show')}">{$vo2}
{/maccms:foreach}
{/empty}
2
3
4
5
6
7
8
9
10
11
12
13
修改后的代码是:
<a {if condition="$pp['area'] eq ''"} class="current" {/if} href="{:mac_url_type($obj,['area'=>'','lang'=>$pp['lang'],'year'=>$pp['year'],'level'=>$pp['level'],'letter'=>$pp['letter'],'state'=>$pp['state'],'tag'=>$pp['tag'],'class'=>$pp['class'],'order'=>$pp['order'],'by'=>$pp['by'] ],'show')}">全部
{empty name="$obj.type_extend.area"} {maccms:foreach name=":explode(',',$obj.parent.type_extend.area)" id="vo2" key="key2"}
<a {if condition="$pp['area'] eq $vo2"} class="current" {/if} href="{:mac_url_type($obj,['area'=>$vo2,'lang'=>$pp['lang'],'year'=>$pp['year'],'level'=>$pp['level'],'letter'=>$pp['letter'],'state'=>$pp['state'],'tag'=>$pp['tag'],'class'=>$pp['class'],'order'=>$pp['order'],'by'=>$pp['by'] ],'show')}">{$vo2}
{/maccms:foreach} {else /} {maccms:foreach name=":explode(',',$obj.type_extend.area)" id="vo2" key="key2"}
<a {if condition="$pp['area'] eq $vo2"} class="current" {/if} href="{:mac_url_type($obj,['area'=>$vo2,'lang'=>$pp['lang'],'year'=>$pp['year'],'level'=>$pp['level'],'letter'=>$pp['letter'],'state'=>$pp['state'],'tag'=>$pp['tag'],'class'=>$pp['class'],'order'=>$pp['order'],'by'=>$pp['by'] ],'show')}">{$vo2}
{/maccms:foreach} {/empty}
2
3
4
5
6
# 为什么无法在线播放?
程序只提供数据管理功能,无法直接实现站内播放功能,如有需要请自行整合第三方提供的插件。
# 上传失败常见问题?
由于采用最新的TP框架,需要开启php
的fileinfo
支持库,php.ini
里 extension=php_fileinfo.dll;
宝塔等面板里直接安装开启 。
上传失败问题请检查php
临时文件目录权限和cms系统文件存储目录权限。
windows
一般是:C:/windows/temp,``linux
一般是/var/tmp
。 cms
存储目录upload
。
如果开启第三方存储,请检查三方存储配置信息。
也可能是php.ini
配置文件里post
和upload
大小限制,修改的值大一些即可。
upload_max_filesize = 8M
post_max_size = 10M
TIP
如果使用的是php5.
6版本(php7版本不受影响),还需要设置php.ini
开启always_populate_raw_post_data = -1
这个选项,也就是去掉这项配置前面的分号即可。
# 运行安装页面出现空白页面
- 该情况一般为Runtime目录没有修改写入权限
# 提示 SQLSTATE_22001
TIP
SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column '' at row 1 或者 Warning: 1265 Data truncated for column 类似错误
该错误就插入字段长度超过设定的长度,一般程序会在数据库字段设置字符长度在插入之前程序很少会先判断数据长度和截取数据 这样会影响性能,所以你就需要修改你数据库的配置文件一般在MYSQL
安装目录中的my.ini
中 搜索sql-mode sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
把其中的STRICT_TRANS_TABLES
,去掉 建议使用该方法
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
或者把
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
直接删除
# 数据库连接配置文件。
RE:手动修改数据库连接信息,数据库密码等/application/database.php
# 如何重装苹果cms?
RE:需要删除/application/data/install/install.lock
# 采集资源为何播放不了?
(资源类型是youku、tudou、iqiyi等等)第三方网址
- 方法1,整合资源站的播放器js文件。
- 方案2,开启全局解析或独立解析和播放器解析状态。
# 宝塔Nginx环境404?
宝塔Nginx环境下,程序安装完毕后除非首页其他页面全部404的问题? RE:方法,进入宝塔软件设置,找到对应的php版本-设置,安装扩展,找到PATH_INFO这项,点击关闭,然后重新安装一下就ok了,这个可能是宝塔的bug。
# 采集完数据后为何无法播放???
RE:检查采集数据的播放地址,如果是完成的http地址,则需要开启播放器的解析状态用解析播放;如果采集的数据ID可会直接用本地播放器来播放。
# 为何新增加了分类,前台页面进入提示没有权限???
RE:因为新加的分类默认所有会员组都是没有权限的,需要进入会员组里配置每个组的分类权限,保存一下即可。
# 改乱了怎么办?
- 路由规则改错了,页面权都打不开了,怎么恢复到默认的???
- 下载完整安装包,复制application/route.php 替换到网站里,就可以打开了,然后在后台重新修改下路由规则。
# nginx下除了首页其他都是404怎么办?
修改一下伪静态规则,一般都可以解决了。 如果修改了后台文件入口admin.php,则改为对应的文件名。
if (!-e $request_filename) {
rewrite ^/index.php(.*)$ /index.php?s=$1 last;
rewrite ^/admin.php(.*)$ /admin.php?s=$1 last;
rewrite ^/api.php(.*)$ /api.php?s=$1 last;
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
2
3
4
5
6
7
# 页面提交数据后过段时间才生效
这个一般是web服务配置了缓存导致的~~
访问phpinfo()
,看看是不是你开启了ZendOpcache
之类的opcode
缓存.ZendOpcache
里面有个过期时间配置,如opcache
.revalidate_freq=60
,表示60秒后脚本再次被访问时会检测PHP文件的时间戳,有改变则更新opcode缓存,你可以设为0,这样每次访问都会检测文件时间戳,你的修改就能生效了.
在php.ini
文件中找到
opcache.enable=1
或
opcache.enable_cli=1
改为0
,重启php-fpm,done