All pastes #454892 Raw Edit

Mine

public php v1 · immutable
·published 2007-04-23 21:38 UTC
rendered paste body
<?PHP/*  * Connecting to the database */openConnection();/*  * list related functions  *  * - hasChild()  * @param $id Used to check if $id has children * @return boolean Returns true when the $id has children */function hasChild($id) {	$sql="SELECT * FROM navigation WHERE parentid = " . $id . ";";	$qry=mysql_query($sql);	if(mysql_num_rows($qry) > 0) {		return true;	} else 		return false;	}/*  * - listChilds() * @param $id Used to list children of $id * @param $depth Used to keep track of the $id's depth for listing * @return $arrayChild All childs of $id stored as an array (used by mainList()) */function listChilds($id, $depth=1) {	$sql="SELECT * FROM navigation WHERE parentid = " . $id . " ORDER BY rank;";	$qry=mysql_query($sql);	while($list = mysql_fetch_assoc($qry)) {		$arrayChild=array_merge($arrayChild, array( array(				'depth'=>$depth,			'id'=>$list['id'],				'name'=>$list['name'], 			'parentid'=>$list['parentid'],			'contentid'=>$list['contentid'],				'rank'=>$list['rank'], 			'type'=>$list['type'] )));		if(hasChild($list['id'])) {			$depth=$depth+1;			$arrayChild=array_merge($arrayChild,listChilds($list['id'], $depth));			$depth=$depth-1;		}	}	return $arrayChild;}/*  * - mainList() * @return $array All parents and childs from the database as an array */function mainList() {	$sql="SELECT * FROM navigation WHERE parentid = -1 ORDER BY rank;";	$qry=mysql_query($sql);	$depth=0;	while($list = mysql_fetch_assoc($qry)) {		$array=array_merge($array, array( array(			'depth'=>$depth,			'id'=>$list['id'],			'name'=>$list['name'],			'parentid'=>$list['parentid'],			'contentid'=>$list['contentid'],			'rank'=>$list['rank'],			'type'=>$list['type'] )));		if(hasChild($list['id'])) {			$array=array_merge($array, listChilds($list['id']));		}	}	return $array;}/*  * Creating table  */echo '	<table cellspacing="0" >	<tr class="head">	<th>ID</th>	<th>Name</th>	<th>Parentid</th>	<th>Contentid</th>	<th>Rank</th>	<th>Type</th>	<th>Actions</th>	</tr>';/*  * Storing mainList() in $array1 */$array1 = mainList();/* * Looping through $array1, putting values in <table> */foreach($array1 as $key=>$arr) {		if($arr['depth'] == 0) {		$class="class=\"even\"";		if ($key != 0) { 			echo '				<tr class="placeholder">				<td colspan="7">&nbsp;</td>				</tr>'; 			}	} else $class="";	echo '			<tr ' . $class . '>			<td>' . str_repeat("_",$arr["depth"]) . '' . $arr["id"] . '</td>			<td>' . $arr["name"] . '</td>			<td>' . $arr["parentid"] . '</td>			<td>' . $arr["contentid"] . '</td>			<td>' . $arr["rank"] . '</td>			<td>' . $arr["type"] . '</td>			<td><a href="#">X</a> <a href="?page=create.menu&amp;id=' . $arr["id"] . '">E</a></td>			</tr>';}/*  * End of table */echo '</table>'; ?>