Доброго времени суток.
Долго мучился с менюшкой для БД. Захотелось сделать древовидный список с открывающимися элементами. При выполнении кода (ниже) - открывается пустой экран после долгой прогрузки страницы (считывается БД). Думаю что проблема в подстановке значений из PHP в Java в самом конце кода. Помогите разобраться.
Кстати, на эту идею навело
http://www.coders-library.ru/news-vi...rd-Result.html
<html><head>
</head><body>
<script language="JavaScript" src="\demo1\tree.js"></script>
<script language="JavaScript" src="\demo1\tree_items.js"></script>
<script language="JavaScript" src="\demo1\tree_tpl.js"></script>
<?php
// database access parameters
// alter this as per your configuration
$host = "192.***";
$user = "user";
$pass = "123";
$db = "ST_";
$table= "project";
//Соединяемся с базой данных
$link = pg_pconnect("host=$host dbname=$db user=$user password=$pass");
if (!$link)
{
die("Could not open connection to database server");
}
//$ID1 = 0;
function get_tree($parent_id = 0) {
global $out;
$query = "SELECT id,note,id_parent FROM project WHERE id_parent = '$parent_id'"; //начинаем с нулевого уровня
$result = pg_query($query);
while ($row = pg_fetch_array($result)) {
$out .= "['{$row['note']}','data.php?id={$row['id']}&pid={$row['id_parent']}',\n";
get_tree($row['id']); //идём дальше "внутрь" если
//есть у данного id подуровни
$out .= "],";
}
return $out; //возвращаем сформированую структуру.
//Не хватает только начальной строки и конечной
}
?>
<?php
//Начинаем с начальной строки
$tree_items = "[ ['HOME', 'index.php',";
//Вызываем функцию для построения меню
$tree_items .= get_tree();
//Заканчиваем структуру конечной строкой
$tree_items .= "] ];"; //Всё, структура для меню получена
echo '<script language="JavaScript"
<!--//
var TREE_ITEMS = '.$tree_items.'; //создаём массив и
//подставляем в него сформированные ранее данные
new tree (TREE_ITEMS, TREE_TPL); //вызываем функцию яваскрипт,
//которая разберёт нашу структуру и отрисует наше меню
//-->
</script>';
?>
</body></html>