dedecms聯(lián)動菜單通過evalue獲取三級所有的ename的內容(聯(lián)動三級的換算方程式)
- //參數$evalue聯(lián)動的值$egroup聯(lián)動的別名
- //獲得聯(lián)動全部內容
- function ed_get_enum($evalue,$egroup){
- global $db;
- //獲取小數點后的數值
- $fr=explode(".",$evalue);
- //判斷聯(lián)動等級
- //判斷是否整除500(是則為一級聯(lián)動)
- if($evalue%500=='0')
- {
- $rs_top=$db->getOne("select * from dede_sys_enum where evalue='$evalue' and egroup='$egroup'");
- $ename_top = $rs_top[ename];
- }
- //判斷能否整除500 并且沒有小數點(是則為二級聯(lián)動)
- if($evalue%500!='0' && $fr[1]=='')
- {
- $rs_son=$db->getOne("select * from dede_sys_enum where evalue='$evalue' and egroup='$egroup'");
- $ename_son = $rs_son[ename];
-
- //換算一級聯(lián)動
- $evalue_top = $evalue-($evalue%500);
- $rs_top=$db->getOne("select * from dede_sys_enum where evalue='$evalue_top' and egroup='$egroup'");
- $ename_top = $rs_top[ename];
- }
- //判斷小數點后是否有值(有值則為三級聯(lián)動)
- if($fr[1]!='')
- {
- $rs_sec=$db->getOne("select * from dede_sys_enum where evalue='$evalue' and egroup='$egroup'");
- $ename_sec = $rs_sec[ename];
- //換算二級聯(lián)動
- //獲取小數點前的數值
- $evalue_son = $fr[0];
- $rs_son=$db->getOne("select * from dede_sys_enum where evalue='$evalue_son' and egroup='$egroup'");
- $ename_son = $rs_son[ename];
- //換算一級聯(lián)動
- $evalue_top =$evalue_son-($evalue_son%500);
- $rs_top=$db->getOne("select * from dede_sys_enum where evalue='$evalue_top' and egroup='$egroup'");
- $ename_top = $rs_top[ename];
- }
- //返回聯(lián)動
- return $ename_top." ".$ename_son." ".$ename_sec;
- }
使用方法
- {dede:php}
- //聯(lián)動的evalue值,聯(lián)動的字段
- echo ed_getSelect('500','nativeplace');
- {/dede:php}
- [field:nativeplace function="ed_getSelect(@me,'nativeplace')"/]
教程結束!
|