2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 织梦DedeCMS自定义表单联动之城市表单名称只显示数字或枚举值的搞定方式

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

时间:2018-07-05 11:49:06

相关推荐

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

在做完织梦自定义表单做城市二级三级联动后,前台页面显示没有问题,不过在后台获得的数据联动类型只显示枚举值,在网上找了很多方法都不行,其实都是只说了一半,没有说全,下面就对这些方法汇总再给大伙讲一下。

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

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

else if($fielddata[1]==’addon’){ $fields[$field] = “其它附件“;}

在下面加入:

//联动类型显示修正开始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(“/a/dedejq/{$fields[$field]}”,$egroup);}//联动类型显示修正结束

在本文件中继续找到: {/dede:datalist}

在下面加入一下代码:

<?phpfunction 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];} } }}?>

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

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。