Wednesday, May 7, 2014

function to show number of left node and right node in a binary tree

Dear friends

i m a developer and making a MLM site i had  a problem to show number of left and right nodes of a binary tree.

if more then 1000 data are there in the database  then we can not bring all the count for each node.
so we had a solution for that we called an ajax script which  would return the count for each when event of mouse-hover occurs.



script to find the count is here
 find_counts.php
<?php
         //echo "start    TOT=".$total;
        $memid=$app->getRequestVar("memid");
        $total_other=0;
        $total_right_ajax= get_tree($app->getRequestVar("memid"),'right');
        //$app->assign("total_right_ajax", $total_right_ajax);           
       
        global $total_other;
        $total_other=0;
        //echo "after    TOT=".$total;
        $total_left_ajax= get_tree($app->getRequestVar("memid"),'left');   
        //$app->assign("total_left_ajax", $total_left_ajax);   
       
       
       
        function get_tree($memid,$leg){
       
            $sql="select user_id from user
            left join user_binary  on user_binary .user_id=user.id
            where   user_binary.parent_id='".$memid."' and binary_position='".$leg."'";
            // echo "<br>";
            $res=mysql_query($sql);
           
            global $total_other;
            $total_other=$total_other+mysql_num_rows($res);
            $row=mysql_fetch_array($res);
           
            if($row['user_id']!=''){
                get_tree ($row['user_id'],'left');
                get_tree ($row['user_id'],'right');
            }
           
            return $total_other;
            }

        echo "LEFT: ".$total_left_ajax."&nbsp;       RIGHT: ".$total_right_ajax;
?>    

Now just write a ajax function to call find_counts.php  and display it

if any query feel free to ask ..

No comments:

Post a Comment