SetQuery("SELECT id,typename FROM `#@__channeltype` "); $dsql->Execute(); $channels = array(); while ($row = $dsql->GetObject()) { $channels[$row->id] = $row->typename; } $OptionArrayList = ""; $query = "SELECT id,typename,ispart,channeltype,issend FROM `#@__arctype` WHERE ispart<2 AND reid=0 ORDER BY sortrank ASC "; $dsql->SetQuery($query); $dsql->Execute(); $selected = ''; while ($row = $dsql->GetObject()) { if ($selid == $row->id) { $selected = " selected='$selected'"; } if ($row->channeltype == $channeltype && $row->issend == 1) { if ($row->ispart == 0) { $OptionArrayList .= "\r\n"; } else if ($row->ispart == 1) { $OptionArrayList .= "\r\n"; } } $selected = ''; LogicGetOptionArray($row->id, "─", $channeltype, $selid); } return $OptionArrayList; } /** * 逻辑递归 * * @access public * @param int $id * @param string $step * @param string $channeltype * @param int $selid * @return string */ function LogicGetOptionArray($id, $step, $channeltype, $selid = 0) { global $OptionArrayList, $channels, $dsql; $selected = ''; $dsql->SetQuery("Select id,typename,ispart,channeltype,issend From `#@__arctype` where reid='".$id."' And ispart<2 order by sortrank asc"); $dsql->Execute($id); while ($row = $dsql->GetObject($id)) { if ($selid == $row->id) { $selected = " selected='$selected'"; } if ($row->channeltype == $channeltype && $row->issend == 1) { if ($row->ispart == 0) { $OptionArrayList .= "\r\n"; } else if ($row->ispart == 1) { $OptionArrayList .= "\r\n"; } } $selected = ''; LogicGetOptionArray($row->id, $step."─", $channeltype, $selid); } } /** * 自定义类型 * * @param int $mid 会员ID * @param int $mtypeid 自定义类别ID * @param int $channelid 频道ID * @return string */ function classification($mid, $mtypeid = 0, $channelid = 1) { global $dsql; $list = $selected = ''; $quey = "SELECT * FROM `#@__mtypes` WHERE mid = '$mid' And channelid='$channelid' ;"; $dsql->SetQuery($quey); $dsql->Execute(); while ($row = $dsql->GetArray()) { if ($mtypeid != 0) { if ($mtypeid == $row['mtypeid']) { $selected = " selected"; } } $list .= "\r\n"; $selected = ''; } return $list; }