您现在的位置是:首页 > 教程 > 帝国CMS教程帝国CMS教程
帝国cms搜索全站内容没数据的解决方法
蔡粮鲜2023-05-19 23:16:13帝国CMS教程已有人查阅
导读1. 如何方便的在php7和其他版主中自由的切换帝国cmsphp7 有很多地方不再兼容低版本。对于帝国cms7.5来说,受影响最深的就是编码转换了。
1. 如何方便的在php7和其他版主中自由的切换帝国cms
//数据库设置
$ecms_config['db']['usedb']='mysql'; //数据库类型
if(PHP_VERSION>6.9)$ecms_config['db']['usedb']='mysqli';
或者 两句合并成一句
$ecms_config['db']['usedb']=PHP_VERSION>6.9?'mysqli':'mysql';
php7 有很多地方不再兼容低版本。对于帝国cms7.5来说,受影响最深的就是编码转换了。
在php7的地盘,PHP4的语法风格中的一些东西将被被抛弃。例如构造函数的用法,会在新的PHP7中完全被抛弃。PHP7将会提示一个: E_DEPRECATED的错误提示。
<?php
class foo {
//方法名类名相同的构造函数的用法不再兼容
function foo() {
echo 'I am the constructor';
}
}
?>
翻遍帝国cms7.的源代码,帝国cms的编码转换文件e/class/doiconv.php,有多处不适应php7
可能受影响的模块:
支付--- http://bbs.phome.net/ShowThread/?threadid=360357&forumid=42
搜索 --- http://bbs.phome.net/ShowThread?threadid=360428&forumid=42
首字母生成---- http://bbs.phome.net/ShowThread?threadid=361442&forumid=13
增加栏目生成拼音乱码 --- http://bbs.phome.net/ShowThread/?threadid=357442&forumid=42
本着少改的原则,提出如下修改办法---
针对 e/class/doiconv.php 文件
2.1 查找
function Chinese($dir='./')
修改为
function __construct($dir='./')
2.2 查找
$this->config['codetable_dir'] = $dir."../data/codetable/";
修改为
$this->config['codetable_dir'] = ECMS_PATH."e/data/codetable/";
2.3 查找
/* 如果编码相同,直接返回 */
if ($source_lang == $target_lang || $source_string == '')
{
return $source_string;
}
在其后添加:
//edit by jiuhecai
return mb_convert_encoding($source_string,$target_lang,$source_lang);
2.4 查找
while(list($key,$value)=each($tmp))
替换为:
foreach($tmp as $key=>$value)
邮件发送模块,也有类似的问题
邮件发送模块 e/class/class.smtp.php
问题表现: http://bbs.phome.net/ShowThread/?threadid=357544&forumid=42
解决方案:
修改e/class/class.smtp.php
3.1 查找 function SMTP() {
修改为
function __construct() {
3.2查找
while(list(,$line) = @each($lines)) {
修改为:
foreach($lines as $line){
3.3查找
while(list(,$line_out) = @each($lines_out)) {
修改为
foreach($lines_out as $line_out){
3.4 查找
while(list(,$l) = @each($entries)) {
修改为
foreach ($entries as $l){
本文标签:
很赞哦! ()
相关文章
随机图文
-
帝国CMS点击量(onclick)过万换成万为单位的方法
比如:点击量的数值过万时怎样变成 如: 10009变成1.09万。找到显示点击量的地方换成如下代码,下面是内容模板使用的代码: -
帝国CMS如何提高缩略图质量,帝国CMS缩略图不清晰怎么办
打开e/class/gd.php查找,红色的100就是缩略图的质量参数,一般默认为75(又或者是80),觉得缩略图质量不够的就用这个控制,解决缩略图不清晰的问题. -
帝国cms数据表phome_ecms_news新闻系统模型主表结构
phome_ecms_news新闻系统模型-主表字段名字段类型解释idint(10) unsigned信息IDclassidsmallint(5) unsigned栏目IDttidsmallint(5) unsigned标题分类IDonclickint(10) unsig -
帝国CMS生成缩略图函数sys_ResizeImg效率慢怎么办
小伙伴们再帝国CMS模板开发中会面对不同位置调用不同尺寸缩略图的问题,这个时候我们一般会用帝国CMS的sys_ResizeImg自动生成缩略图函数。
留言与评论 (共有 条评论) |