destoon采集论坛

 找回密码
 立即注册
查看: 434|回复: 11

网站设置和SEO以及发布信息标题里不能提交中文 只能提交字母和数字

[复制链接]

14

主题

24

回帖

106

积分

注册会员

Rank: 2

积分
106
发表于 2014-12-1 10:51:03 | 显示全部楼层 |阅读模式
网站设置和SEO以及发布信息标题里不能提交中文 只能提交字母和数字,不要说什么权限问题,PHP 版本问题,请官方配合解决一下,环境是centos apache GBK版
回复

使用道具 举报

14

主题

24

回帖

106

积分

注册会员

Rank: 2

积分
106
 楼主| 发表于 2014-12-1 10:53:44 | 显示全部楼层

补充 用的阿里云的 centos6.4系统,php.inic httpd.conf里面都默认了编码格式
回复 支持 反对

使用道具 举报

7

主题

1126

回帖

2327

积分

金牌会员

Rank: 6Rank: 6

积分
2327
发表于 2014-12-1 11:01:34 | 显示全部楼层


sydabing 发表于 2014-12-1 10:53

补充 用的阿里云的 centos6.4系统,php.inic httpd.conf里面都默认了编码格式

在php文件中查找htmlspecialchars

将 htmlspecialchars 替换为 dhtmlspecialchars
将 ddhtmlspecialchars替换为 dhtmlspecialchars
替换完成之后,重新上传到服务器,将服务器上面的相关文件替换。
回复 支持 反对

使用道具 举报

14

主题

24

回帖

106

积分

注册会员

Rank: 2

积分
106
 楼主| 发表于 2014-12-1 10:53:00 | 显示全部楼层


tian0220 发表于 2014-12-1 11:01

在php文件中查找htmlspecialchars

将 htmlspecialchars 替换为 dhtmlspecialchars

我查看过了相关文件,貌似不行啊 ,貌似默认的就是这个 dhtmlspecialchars 函数
回复 支持 反对

使用道具 举报

14

主题

24

回帖

106

积分

注册会员

Rank: 2

积分
106
 楼主| 发表于 2014-12-1 20:19:07 | 显示全部楼层


tian0220 发表于 2014-12-1 11:01

在php文件中查找htmlspecialchars

将 htmlspecialchars 替换为 dhtmlspecialchars

虽然你的办法没有解决我的问题,按时按照你提供的这个函数,得到启发,查询果然解决问题了,原来是官方的函数问题
回复 支持 反对

使用道具 举报

14

主题

24

回帖

106

积分

注册会员

Rank: 2

积分
106
 楼主| 发表于 2014-12-1 11:01:00 | 显示全部楼层

解决问题办法:
include/safe.func.php 文件中
函数 dhtmlspecialchars有问题,具体调整办法为:
将现在的函数
function dhtmlspecialchars($string) {
        if(is_array($string)) {
                return array_map('dhtmlspecialchars', $string);
        } else {
                if(defined('DT_ADMIN')) {
                        return str_replace(array('&'), array('&'), htmlspecialchars($string, ENT_QUOTES));
                } else {
                        return str_replace(array('&', '"', '"', '"'), array('&', '', '', ''), htmlspecialchars($string, ENT_QUOTES));
                }
        }
}

替换为:
function dhtmlspecialchars($string) {
    $encoding = 'utf-8';
    if(DT_CHARSET=='gbk')
        { $encoding = 'gb2312'; }   
    if(is_array($string)) {
        return array_map('dhtmlspecialchars', $string);
    } else {
        if(defined('DT_ADMIN'))
                {
            return str_replace(array('&'), array('&'), htmlspecialchars($string, ENT_QUOTES,$encoding));
        } else {
            return str_replace(array('&', '"', '"', '"'), array('&', '', '', ''), htmlspecialchars($string, ENT_QUOTES,$encoding));
        }
    }
}


已经测试,暂时没有发现问题
回复 支持 反对

使用道具 举报

14

主题

24

回帖

106

积分

注册会员

Rank: 2

积分
106
 楼主| 发表于 2014-12-1 21:52:02 | 显示全部楼层

困扰了我一天终于解决了
回复 支持 反对

使用道具 举报

14

主题

24

回帖

106

积分

注册会员

Rank: 2

积分
106
 楼主| 发表于 2014-12-1 11:01:00 | 显示全部楼层

本帖最后由 sydabing 于 2014-12-1 22:01 编辑

困扰了我一天终于解决了  有需要做本系统二次开发 或房产网站程序 以及网站建设 请联系QQ 9385126
回复 支持 反对

使用道具 举报

50

主题

3415

回帖

7668

积分

论坛元老

Rank: 8Rank: 8

积分
7668
发表于 2014-12-1 21:54:25 | 显示全部楼层


sydabing 发表于 2014-12-1 21:54

困扰了我一天终于解决了  有需要做本系统二次开发 或房产网站程序 以及网站建设 请联系QQ 9385126 ...

像这种问题,你应该将你配置的php版本、mysql版本列出来
回复 支持 反对

使用道具 举报

7

主题

1126

回帖

2327

积分

金牌会员

Rank: 6Rank: 6

积分
2327
发表于 2014-12-1 21:54:50 | 显示全部楼层


sydabing 发表于 2014-12-1 20:19

我查看过了相关文件,貌似不行啊 ,貌似默认的就是这个 dhtmlspecialchars 函数 ...

dhtmlspecialchars 函数是这个函数的问题
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|destoon采集论坛

GMT+8, 2025-11-24 06:53 , Processed in 0.018191 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表