Как увидеть или просмотреть иерархию вниз в бинарном дереве? - PullRequest
0 голосов
/ 09 декабря 2018

Доброго времени суток всем вам, у меня проблема с выводом строк моего двоичного дерева, я действительно новичок в этом и не знаю абсолютно, как решить эту проблему.

IЯ учусь в университете на Филиппинах, и в нашем классе веб-разработки наш инструктор поручает каждой группе (состоящей из 3 человек в каждой) создать веб-сайт на основе того, что он выбрал для этой группы (способ, которым он выбирает, является случайным / избанку с бумагами о том, что задача) теперь наша группа получила задание создать двоичную древовидную структуру для просмотра каждого корня / родителя и их листьев / детей. Он хочет, чтобы мы достигли чего-то вроде this .

Я пробовал этот код, но он печатает только все, и я уверен, что это неправильно, потому что мы только печатаем его, а не его полное дерево, например, если я печатаю для родителя во второмузел, мы должны видеть его потомков .. Но что происходит, он печатает только левую и правую, а не то, что под ними. Это наша база данных , а это мой код

$parents = array();
$left;
$right;

try {
    $stmt = $conn->prepare('SELECT DISTINCT(parent) FROM accounts 
WHERE parent!= "null"');
    $stmt->execute();
    $stmt->execute();
    while($row = $stmt->fetch()) {
        echo $row['parent'];
        echo '<br>';
        array_push($parents, $row['parent']);
    }
} catch(PDOException $e) {
    die($e->getMessage());
}

foreach($parents as $parent) {
    try {
        $stmt = $conn->prepare('SELECT * FROM accounts WHERE parent= ?');
        $stmt->bindValue(1, $parent);
        $stmt->execute();
        while($row = $stmt->fetch()) {
            if($row['position'] == 'left') {
                echo $row['name'] .'left';
                echo '<br>';
            } else {
                echo $row['name'] .'right';
                echo '<br>';
            }
        }
    } catch(PDOException $e) {
        die($e->getMessage());
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...