001002003004005006007008009010011012013014015016017018019020021022023024025026027028029030031032033034035036037038039040041042043044045046047048049050051052053
<?php // (2018.4.14, 차재복, Cha Jae Bok, cjbword@gmailcom) # contents_display.php // 화면 우측에 navigation menu 출력하는 프로그램 # 전달 파라미터 : $set, $cur_path, $dbi, $m_temp1 // $set : db 쿼리된 순서화된 레코드 결과 집합 // $cur_path : 현재 path 정보 (`0,...` 처럼 보임) // $dbi : mysqli 연결 리소스 # 목록 출력 echo "<ol>"; foreach ($set as $key => $value) { // 항목 레벨 깊이 차이 계산 $diff = ($set[$key+1][depth]-$set[$key][depth]); echo "<li>"; // show/hide (▷/▽) if ( $diff > 0 or ($value[sub_cnt] == 0 and $value[linked_num]>0 and $value[id]==$id) ) { echo " <a href='".$value[id]."' class='lower_ol_hideshow' >▽</a>"; } else if ( $diff <= 0 or ($value[sub_cnt] == 0 and $value[linked_num]>0 and $value[id]!=$id) ) { echo " <a href='".$value[id]."' class='ajax_page' >▷</a>"; } echo " "; // 분류 항목 명칭 출력 if (strpos(','.$cur_path.',',','.$value[id].',')!==false) echo "<b>"; echo "<a href='view.php?nav=2&id=".$value[id]."'>".$value[name]."</a>"; if (strpos(','.$cur_path.',',','.$value[id].',')!==false) echo "</b>"; if ( $diff > 0) echo "<ol>"; // 레벨 추가 // 용어 항목 명칭 출력 if ( $value[linked_num]>0 and strpos(','.$cur_path.',',','.$value[id].',')!==false ) { if($value[sub_cnt]==0) echo "<ol><li>"; echo "<span id='items'>"; detail_items_display($value[id],$value[linked_num],$m_temp1,$dbi,"contents"); echo "</span>"; if($value[sub_cnt]==0) echo "</li></ol>"; } if ( $diff == 0) echo "</li>"; // 동급 레벨 if ( $diff < 0) // 레벨 닫음 echo str_repeat("</ol></li>", - $diff); } echo "</ol>"; ?>