dedecms联动菜单通过evalue获取三级所有的ename的内容(联动三级的换算方程式)
  1. //参数$evalue联动的值$egroup联动的别名
  2. //获得联动全部内容
  3. function ed_get_enum($evalue,$egroup){
  4. global $db;
  5. //获取小数点后的数值
  6. $fr=explode(".",$evalue);
  7. //判断联动等级
  8. //判断是否整除500(是则为一级联动)
  9. if($evalue%500=='0')
  10. {
  11. $rs_top=$db->getOne("select * from dede_sys_enum where evalue='$evalue' and egroup='$egroup'");
  12. $ename_top = $rs_top[ename];
  13. }
  14. //判断能否整除500 并且没有小数点(是则为二级联动)
  15. if($evalue%500!='0' && $fr[1]=='')
  16. {
  17. $rs_son=$db->getOne("select * from dede_sys_enum where evalue='$evalue' and egroup='$egroup'");
  18. $ename_son = $rs_son[ename];
  19. //换算一级联动
  20. $evalue_top = $evalue-($evalue%500);
  21. $rs_top=$db->getOne("select * from dede_sys_enum where evalue='$evalue_top' and egroup='$egroup'");
  22. $ename_top = $rs_top[ename];
  23. }
  24. //判断小数点后是否有值(有值则为三级联动)
  25. if($fr[1]!='')
  26. {
  27. $rs_sec=$db->getOne("select * from dede_sys_enum where evalue='$evalue' and egroup='$egroup'");
  28. $ename_sec = $rs_sec[ename];
  29. //换算二级联动
  30. //获取小数点前的数值
  31. $evalue_son = $fr[0];
  32. $rs_son=$db->getOne("select * from dede_sys_enum where evalue='$evalue_son' and egroup='$egroup'");
  33. $ename_son = $rs_son[ename];
  34. //换算一级联动
  35. $evalue_top =$evalue_son-($evalue_son%500);
  36. $rs_top=$db->getOne("select * from dede_sys_enum where evalue='$evalue_top' and egroup='$egroup'");
  37. $ename_top = $rs_top[ename];
  38. }
  39. //返回联动
  40. return $ename_top."".$ename_son."".$ename_sec;
  41. }



使用方法
  1. {dede:php}
  2. //联动的evalue值,联动的字段
  3. echo ed_getSelect('500','nativeplace');
  4. {/dede:php}

  5. [field:nativeplace function="ed_getSelect(@me,'nativeplace')"/]

教程结束!
发布评论

分享到:

dedecms后台上传图片出现“提示:需要输入后台管理目录”的处理办法
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。