[BUG反饋]PDO連線亂碼問題

發表於2019-05-11
本地OK,部署至伺服器的WDCP環境顯示DRVIER不存在,
全新安裝PDO_MYSQL擴充後讀出的資料都是問號。

解決方案:
Driver.class.php #103
下方需要加入:
$this->linkID[$linkNum] -> exec("set names utf8");

不知道具體原因,希望官方可以改進。

另外兩個問題,請也考慮在內:

自定義列表的函式使用,可以配置引數:

function get_list_field($data, $grid){

    // 獲取當前欄位資料
    foreach($grid['field'] as $field){
        $array = explode('|',$field);
        $temp = $data[$array[0]];
        // 函式支援
        // fimvisual 多引數call_user_func支援
        if(isset($array[1])){
            //echo "<pre>";print_r($para);echo "</pre>";
            $para = explode ("=", $array[1]);
            if($para[1]){
                $paras = explode ("&", $para[1]);
                foreach($paras as $k => $v){
                    if($v == '###'){
                        $paras[$k] = $data[$array[0]];
                    }
                }
                //echo "<pre>";print_r($paras);echo "</pre>";
                $temp = call_user_func_array($para[0],$paras);
            }else{
                $temp = call_user_func($array[1], $temp);
            }
        }
   ...

    自動驗證對二維陣列如核取方塊無法自動判斷,需重新處理

        protected function checkAttr($Model,$model_id){
            $fields = get_model_attribute($model_id,false);
            $validate = $auto = array();
            foreach($fields as $key=>$attr){
                /*if($attr['is_must']){// 必填欄位
                    $validate[] = array($attr['name'],'require',$attr['title'].'必須!');
                }*/

                if($attr['is_must']){// 必填欄位
                    //fimvisual 自動驗證對二維陣列如核取方塊無法自動判斷,需重新處理
                    //TODO 獲取按欄位順序,否則驗證時跳出提示順序不對
                    if($attr['type']=='checkbox'){
                        if(I($attr['name']) == ''){
                            $this->error($attr['title'].'必須!');
                        }
                    }else{
                        $validate[] = array($attr['name'],'require',$attr['title'].'必填!');
                    }
                }
    ...
回覆
請問你的mysql版本號是多少?
評論

相關文章