织梦模板建站、织梦仿站,推荐选跟版网(专业织梦模板定制下载站),您可以把织梦模板网:加入收藏夹添加到桌面

收藏跟版网图片按钮
跟版网(www.genban.org)是专业的DEDECMS模板下载和定制开发服务商!
用户名: 密码: 验证码: 看不清?点击更换   注册帐号

跟版网-专业只为织梦模板

跟版网 > 织梦教程 > dedecms教程 > 织梦自定义表单联动之城市表单名称只显示数字或枚举值的解决方法

织梦自定义表单联动之城市表单名称只显示数字或枚举值的解决方法

作者:DEDECMS建站网 关注: 时间:2017-09-13 22:30

内容详情

 我们在做完织梦自定义表单做城市二级三级联动后,前台页面显示没有问题,不过在后台获得的数据联动类型只显示枚举值,

织梦城市联动

在网上找了很多方法都不行,其实都是只说了一半,没有说全,下面我就对这些方法汇总再给大家讲一下。
织梦自定义表单联动之城市表单名称只显示数字或枚举值的解决方法:

1、找到dede/templets/ddiy_list.htm文件中(大约在41行): 
 

else if($fielddata[1]=='addon')
{
    $fields[$field] = "<a href='{$fields[$field]}' target='_blank'><img src='images/channeladd.gif' border='0' /> 其它附件</a>";
}


在下面加入:
 

//联动类型显示修正开始

            else if($fielddata[1]=='stepselect')
            {
                $db->Execute('me',"SELECT * FROM `dede_stepselect` WHERE egroup='{$field}'");
                while($arr = $db->GetArray(me))
                {
                    $egroup = $arr['egroup'];
                }
                $fields[$field] = Getenums("{$fields[$field]}",$egroup);
            }

//联动类型显示修正结束



在本文件中继续找到: {/dede:datalist}
在下面加入一下代码:
 

<?php
function Getenums($evalue = 0, $egroup)
{
    if (!isset($GLOBALS['em_' . $egroup . 's'])) {
        $cachefile = DEDEDATA . '/enums/' . $egroup . '.php';
        if (!file_exists($cachefile)) {
            require_once DEDEINC . '/enums.func.php';
            WriteEnumsCache();
        }
        if (!file_exists($cachefile)) {
            return '';
        } else {
            require_once $cachefile;
        }
    }
    if ($evalue >= 500) {
        if ($evalue % 500 == 0) {
            return isset($GLOBALS['em_' . $egroup . 's'][$evalue]) ? $GLOBALS['em_' . $egroup . 's'][$evalue] : '';
        } else {
            if (preg_match('#([0-9]{1,})\\.([0-9]{1,})#', $evalue, $matchs)) {

$esonvalue = $matchs[1];
$etopvalue = $esonvalue - $esonvalue % 500;
$esecvalue = preg_replace('/(?<=\.)[0]+/', '', $evalue);

$GLOBALS['em_' . $egroup . 's'][$etopvalue] = empty($GLOBALS['em_' . $egroup . 's'][$etopvalue]) ? '' : $GLOBALS['em_' . $egroup . 's'][$etopvalue];

$GLOBALS['em_' . $egroup . 's'][$esonvalue] = empty($GLOBALS['em_' . $egroup . 's'][$esonvalue]) ? '' : $GLOBALS['em_' . $egroup . 's'][$esonvalue];

$GLOBALS['em_' . $egroup . 's'][$esecvalue] = empty($GLOBALS['em_' . $egroup . 's'][$esecvalue]) ? '' : $GLOBALS['em_' . $egroup . 's'][$esecvalue];

return $GLOBALS['em_' . $egroup . 's'][$etopvalue] . ' - ' . $GLOBALS['em_' . $egroup . 's'][$esonvalue] . ' - ' . $GLOBALS['em_' . $egroup . 's'][$esecvalue];
            }
			else 
			{
$elimit = $evalue % 500;
$erevalue = $evalue - $elimit;
$GLOBALS['em_' . $egroup . 's'][$erevalue] = empty($GLOBALS['em_' . $egroup . 's'][$erevalue]) ? '' : $GLOBALS['em_' . $egroup . 's'][$erevalue];
$GLOBALS['em_' . $egroup . 's'][$evalue] = empty($GLOBALS['em_' . $egroup . 's'][$evalue]) ? '' : $GLOBALS['em_' . $egroup . 's'][$evalue];
return $GLOBALS['em_' . $egroup . 's'][$erevalue] . ' - ' . $GLOBALS['em_' . $egroup . 's'][$evalue];
            }
        }
    }
}
?>



按照上面的方法修改完成后即可显示!
 

跟版网-专业织梦模板下载平台,转载请注明出处:http://www.genban.org/news/dedecms-7028.html

     邀您关注:  

扫描左侧二维码即可在手机端访问此页面

跟版网官方微信公众账号

扫描左侧二维码即可关注跟版网官方微信公众号,获取金币模板,还可以免费仿站哦!

跟版网官方QQ群

扫描左侧二维码即可加入跟版网官方群,免费获取金币资源并可以与其他织梦高手共同交流学习

跟版网率先实现织梦的三网合一网站,从即日起(2015-10-15)日,跟版网会陆续免费分享一批金币资源给需要的朋友,关注本站认证官方微信公众账号并回复相应的提取码,系统会自动将下载地址发送给您,同时这些金币资源也会分享在官方的QQ群中,欢迎各位朋友踊跃加入。另外本站后期会每周选择大家比较喜欢的网站仿制,并免费分享给大家,还有免费送金币活动哦!

上一篇:织梦5.7自定义表单实现多级城市联动的方法

下一篇:dedecms织梦网站栏目或多级栏目循环调用方法 织梦网站如何调用指定栏目教程