Re: Nested database loops and completing an unordered list....

From: Date: Fri, 02 Mar 2012 00:39:36 +0000
Subject: Re: Nested database loops and completing an unordered list....
References: 1 2 3 4 5 6  Groups: php.general 
Request: Send a blank email to php-general+get-316828@lists.php.net to get a copy of this message
On Mar 1, 2012, at 6:36 PM, Jay Blanchard wrote: > [snip]…stuff…[/snip] > > I am getting close, but I am also getting frustrated. I probably need to walk away for a bit. > > I have an array of tiers…. > > Array > ( > [0] => TIER1DATA > [1] => TIER2DATA > [2] => TIER3DATA > [3] => BUSTIER1DATA > [4] => BUSTIER2DATA > [5] => BUSTIER3DATA > [6] => BUSTIER4DATA > ) > Each of the tiers which represent parents in children in pairs. TIER1DATA is the parent of > TIER2DATA, etc. representing 7 columns of data. Here is my code so far - any insight would be > valuable and extremely appreciated by me. > > function display_children($i, $child) { > global $dbc; > global $tierArray; > echo $i."<br />"; > /* retrieve children of parent */ > $get = "SELECT DISTINCT ". $tierArray[$i] ." > FROM POSITION_SETUP "; > $get .= "WHERE COMPANY_ID = '3' "; > if($i > 0) { > $get .= "AND " . $tierArray[$i - 1] . " = > '" . $child . "' "; > } > echo $get."<br />"; > if(!($result = mysql_query($get, $dbc))) { > echo mysql_errno() . "\t" . mysql_error() . "\n"; > exit(); > } > > while($row = mysql_fetch_array($result)) { > > /* indent and display the title of this child */ > echo str_repeat('&nbsp;',$i).$row[$tierArray[$i]]."<br />\n"; > > /* get the children's children */ > display_children($i + 1, $row[$tierArray[$i]]); > } > } > > It does produce the right query for only the first child in each case, I cannot get it to go > deeper. I have just been looking at it for too long. TVMIA! Forgot to say that if I isolate any one level without recursion I get all of the results for that level.

« previous php.general (#316828) next »