帮助中心>后台使用说明>字段介绍>

自定义字段

ucms1.4.3新增自定义字段功能

字段类型默认为varchar,如果需要修改成其他类型,请通过数据库工具手动修改

新增自定义字段后,配置该字段,在字段配置中填入函数名,函数代码可以参考以下代码

代码可以放在ucms/admin_config.php

演示:

自定义输入框

function diy_text($action='',$name='',$value='') {
    //output用在显示表单的时候
    if($action=='output') {
        echo('<input type="text" name="'.$name.'"  value="'.$value.'" class="inputtext">');
    }
    //接收表单
    if($action=='input') {
        if(isset($_POST[$name])) {
            Return $_POST[$name];
        }
        Return '';
    }
    //后台文章列表页显示,或者前台显示
    if($action=='show') {
        Return $value;
    }
}


自定义列表框

function diy_select($action='',$name='',$value='') {
    $option=array('红','橙','黄','绿','青','蓝','紫');
    if($action=='output') {
        echo('<select name="'.$name.'">');
        echo('<option value="">未选择</option>');
        foreach($option as $val) {
            if($value==$val) {
                echo('<option value="'.$val.'" selected>'.$val.'</option>');
            }else {
                echo('<option value="'.$val.'">'.$val.'</option>');
            }
        }
        echo('</select>');
    }
    if($action=='input') {
        if(isset($_POST[$name]) && in_array($_POST[$name],$option)) {
            Return $_POST[$name];
        }
        Return '';
    }
    if($action=='show') {
        Return $value;
    }
}


自定义多选框

function diy_checkbox($action='',$name='',$value='') {
    $option=array('红','橙','黄','绿','青','蓝','紫');
    //将数据库中的json数据转换成数组
    $values=json_decode($value,1);
    if($action=='output') {
        //需要插入一个隐藏的输入框,接收表单时删除第一个元素,否则程序无法获得勾选的值
        echo('<input type="hidden" name="'.$name.'[]" value="">');
        foreach($option as $val) {
            if(is_array($values) && in_array($val,$values)) {
                echo('<input type="checkbox" name="'.$name.'[]" value="'.$val.'" checked>'.$val.'&nbsp;');
            }else {
                echo('<input type="checkbox" name="'.$name.'[]" value="'.$val.'">'.$val.'&nbsp;');
            }
        }
        Return '';
    }
    if($action=='input') {
        $newarray=array();
        if(isset($_POST[$name])) {
            unset($_POST[$name][0]);//删除第一个隐藏的空值
            foreach($_POST[$name] as $val) {
                if(in_array($val,$option)) {
                $newarray[]=$val;
                }
            }
            //将数据以json形式存入数据库
            Return json_encode($newarray);//php5.4+版本才支持此参数,防止中文被转义
        }else {
            Return json_encode(array());
        }
    }
    if($action=='show') {
        if(is_array($values) && count($values)>0) {
            Return implode('|',$values);
        }else {
            Return '无';
        }
    }
}



UCMS

当前版本: 1.6 详情

文件大小: 359KB

PHP版本兼容: PHP5.2-PHP8.0

数据库: MySQL SQLite

联系方式