query("set names cp1251"); function microtime_float() { list($usec, $sec) = explode(" ", microtime()); return ((float)$usec + (float)$sec); } $time_start = microtime_float(); function viewRubrics($id = 0,$parent_id = 4){ // print $parent_id."
"; global $dbh,$rubrics; $sql = "select a.* from categories a where a.parent_id='$id'"; $res = $dbh->query($sql); while ($row = $dbh->fetch_array($res)){ echo str_repeat(" ", 6*$row['clevel']); switch($row['clevel']){ case 0 :$size = 10; break; case 1 :$size = 6; break; case 2 :$size = 4; break; default : $size = 2; break; } echo ""; echo $row['title']; echo "
"; // if(in_array($row['cid'],getParentIdRubric($parent_id))){viewRubrics($row['cid']);} viewRubrics($row['cid']); // if($row['level']==0){$this->viewRubrics($row['id']);} } } function getParentIdRubric($id){ //$ids = array(); global $dbh,$ids; if(!count($ids))$ids = array(); while($id>0){ $res = $dbh->query("select cid,parent_id from categories where cid='$id'"); $row = $dbh->fetch_array($res); //if(isset($row['id'])) $ids[] = $row['cid']; $id = $row['parent_id']; } //print_r($ids); // sort($ids); return $ids; } $ID = (isset($_GET['ID'])) ? $_GET['ID'] : 1; viewRubrics(0,$ID); $time_end = microtime_float(); $time = $time_end - $time_start; echo "Âðåìÿ âûâîäà: $time ñåê.\n"; ?>