Доброго времени суток всем вам, у меня проблема с выводом строк моего двоичного дерева, я действительно новичок в этом и не знаю абсолютно, как решить эту проблему.
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());
}
}