synking Posted August 13, 2008 Share Posted August 13, 2008 I have this code here function display_children($parent, $level) { require_once ('../includes/DbConnector.php'); $connector = new DbConnector(); // retrieve all children of $parent $result = $connector->query('SELECT id, name, parentid FROM cmssection '. 'WHERE parentid="'.$parent.'";'); if(!$result) { echo ('<p class="error">Error from query: ' .$connector->getSqlError(). '</p>'); } else { // display each child while ($row = $connector->fetchArray($result)) { // indent and display the title of this child echo (str_repeat(' ',$level)'<a href="">'.$row['name'].'</a><br>'); // call this function again to display this // child's children display_children($row['id'], $level+1); } } } and I am trying to get this to print in an unordered list and i know if i can put a different delimiter in the string repeat function to print out a tag for each child but how could i refine that function to distinguish between child and parent or should i create another separate function that takes the output of that function and formats it the way i want. any ideas. Quote Link to comment https://forums.phpfreaks.com/topic/119510-help-with-function-loop/ Share on other sites More sharing options...
ignace Posted August 13, 2008 Share Posted August 13, 2008 the query is wrong you should be using a self join to retrieve child rows Quote Link to comment https://forums.phpfreaks.com/topic/119510-help-with-function-loop/#findComment-615835 Share on other sites More sharing options...
synking Posted August 13, 2008 Author Share Posted August 13, 2008 ok mind explaining that what do you mean self join then the whole function breaks. Quote Link to comment https://forums.phpfreaks.com/topic/119510-help-with-function-loop/#findComment-615885 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.