插件作者的标准出来了!Manyou诚邀开发者加盟!
“互联网平台开发者”特刊 有奖征集开发者
立即免费下载 Discuz!6.1.0正式版
Discuz! 6.1.0 使用说明
Discuz!NT2.5正式版发布
开放源码下载
UCenter Home 1.2 正式版发布
官方站 | 帮助文档
基于ECShop的网店托管-卖否
PHP就业培训直通车 | LAMP培训大连
Discuz!收费服务内容及价格
“感谢有你同行”手握手2008年数万元重奖志愿者
Discuz!/ECShop 专用官方虚拟主机
亿声传媒(Insenz)中秋祝福发送中
Comsenz 招聘信息
网店系统ECShop v2.6.0正式版火热发布
基于Discuz!的免费论坛空间5D6D
参与有奖社区调查 赢取台湾5日游
发新话题
打印

求助:页面是gb2312,mysql是utf-8,mssql是gb2312,怎么设置字符集?

求助:页面是gb2312,mysql是utf-8,mssql是gb2312,怎么设置字符集?

ucenter是utf-8的
本系统是gb2312的页面和gb2312编码的mssql

用户在本系统注册,可以正常存入mssql,但在ucenter那边是乱码,怎么解决?
搞好了,ucenter提供两种方式,一种mysql直接连接,一种通过fsockopen调用ucenter的接口,现在采用第二种方法,在fsockopen之前,改变client.php的uc_api_post函数:

PHP code
function uc_api_post($module, $action, $arg = array()) {
    $s = $sep = '';
    foreach($arg as $k => $v) {
        if(is_array($v)) {
            $s2 = $sep2 = '';
            foreach($v as $k2=>$v2) {
                $s2 .= "$sep2{$k}[$k2]=".urlencode(uc_stripslashes(mb_convert_encoding($v2,'UTF-8','gb2312')));
                $sep2 = '&';
            }
            $s .= $sep.$s2;
        } else {
            $s .= "$sep$k=".urlencode(uc_stripslashes(mb_convert_encoding($v,'UTF-8','gb2312')));
        }
        $sep = '&';
    }
    $postdata = uc_api_requestdata($module, $action, $s);
    return uc_fopen2(UC_API.'/index.php', 500000, $postdata, '', TRUE, UC_IP, 20);
}



也就是加了mb转码
打完收工
发新话题
版块跳转