解决的办法,在phpcms\libs\functions\extention.func.php(自定义函数文件)中定义一个方法
/**
* 获取选项的格式化输出
* @param str $field 字段名称 必须
* @param int $value 字段值 必须
* @param int $modelid 模型ID 必须
* 2014-09-28 by awen
*/
function get_box($field, $value,$modelid) {
$fields = getcache('model_field_'.$modelid,'model');
extract(string2array($fields[$field]['setting']));
if($outputtype) {
return $value;
} else {
$options = explode("\n",$fields[$field]['options']);
foreach($options as $_k) {
$v = explode("|",$_k);
$k = trim($v[1]);
$option[$k] = $v[0];
}
$string = '';
switch($fields[$field]['boxtype']) {
case 'radio':
$string = $option[$value];
break;
case 'checkbox':
$value_arr = explode(',',$value);
foreach($value_arr as $_v) {
if($_v) $string .= $option[$_v].' ';
}
break;
case 'select':
$string = $option[$value];
break;
case 'multiple':
$value_arr = explode(',',$value);
foreach($value_arr as $_v) {
if($_v) $string .= $option[$_v].' ';
}
break;
}
return $string;
}
}这个是照内容输出页面的原理弄出来的,是系统的实现方式,安全可靠,只是把原来的、号分隔改成了空格,也可以加一个标签之类的,可以自己改。
前台使用
第一个是你的字段名称,第二个是你字段的值,就是输出的1、2、3,第三个是你所使用的模型iD
如楼盘特色字段名为‘lpts’,字段值为$r[lpts]这是loop循环得到的变量也可以是一个指定的你定义的值,第三个15是楼盘模型的ID
{get_box('lpts',$r[lpts],15)}
效果如下
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
相关文章
PHPCMS 统计栏目下子栏目数量的代码2024-11-12
PHPCMS V9 上传图片或附件后后台退出需要重新登录的解决办法2021-06-19
PHPCMS 推荐位输出组图的方法2020-12-30
PHPCMS内容页自定义下拉菜单循环输出数值的方法2020-12-17
PHPCMS v9 search模块搜索栏目名称二次开发2020-02-20
PHPCMS删除文章后数据库中仍有删除文章中的关键词解决办法2019-11-13
PHPCMS中TAG模板、COMMENT模板等不能使用{SITEURL($SITEID)}函数2019-11-13
PHPCMS V9编辑器中新增上传mp4视频(上传视频并插入HTML5的video标签)的功能2019-10-30
PHPCMS一些漏洞修复及解决方案2019-07-10
PHPCMS的产品筛选功能(通用)2019-04-09