Наверное я подумал, перд тем как спросисть
Ответ на мой вопрос я думаю уже будет "помощью"
-~{}~ 18.09.05 17:30:
а не "сделай это за меня, пожалуйста".
-~{}~ 19.09.05 02:09:
УРАА! Огромное спасибо всем! Потратил на это целый день, но все таки сделал. Конечно через ж#пу, по своему, но зато работает. СПАСИБО еще раз!
-~{}~ 19.09.05 02:13:
Нашел выход тем, что создал еще одну колонку num в бд, куда заносил картинки, стоящие перед названием родительского элемента.
Подскажите, как может можно сделать проще?
PHP:
///////Выводим главный елемент//////////////
$sql="SELECT * FROM c_tree WHERE level=0";
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
$name = $row ['name'];
$id = $row ['id'];
echo "<a href=?mod=$mod&action=add_cat&id=$id>".$name.'</a><br>';
//////////////////////////////////////
$sql="SELECT * FROM c_tree ORDER BY left_key";
$result=mysql_query($sql);
while ($row=mysql_fetch_array($result)){
$left_key = $row ['left_key'];
$right_key = $row ['right_key'];
$level = $row ['level'];
$name = $row ['name'];
$parent_id = $row ['parent_id'];
$id = $row ['id'];
if ($level<>0){
//////////////////////Инфа о родителе///////////////////////
$sql_par = "SELECT * FROM c_tree WHERE id=$parent_id";
$res_par = mysql_query($sql_par);
$row_par = mysql_fetch_array($res_par);
$p_left_key = $row_par['left_key'];
$p_right_key = $row_par['right_key'];
$p_level = $row_par['level'];
$p_p_id = $row_par['parent_id'];
$p_num = $row_par['num'];
/////////////////////////Вставляем в бд заборчик тек. елемента/////////////////////
$num ="";
$sql_par_1 = "SELECT * FROM c_tree WHERE parent_id=$p_p_id and left_key>$p_left_key and right_key>$p_right_key and level=$p_level";
$res_par_1 = mysql_query($sql_par_1);
//echo $sql_par_1;
if (mysql_num_rows($res_par_1)==0)//Если его родитель последний,вставляем пустые картинки
{
for ($i=0;$i<$level-1;$i++){
$num = $p_num."<img src=$MOD_PATH$mod/images/line_0.gif border=0>";
}
}
else //Если его родитель не последний,вставляем линии картинки
{
for ($i=0;$i<$level-1;$i++){
$num = $p_num."<img src=$MOD_PATH$mod/images/linemiddle.gif border=0>";
}
}
$sql_up = "UPDATE c_tree SET num='$num' WHERE id=$id";
$res_up = mysql_query($sql_up);
///////////////////////////////////////////////////////////////////////////////////
if ($level<>1){
//////Последний ли родитель?//////////////////////////////////////////////
$sql_par_1 = "SELECT * FROM c_tree WHERE parent_id=$p_p_id and left_key>$p_left_key and right_key>$p_right_key and level=$p_level";
$res_par_1 = mysql_query($sql_par_1);
if (mysql_num_rows($res_par_1)==0)
//Если да, то вставляем заборчик родителя+пустую картинку
echo "$p_num<img src=$MOD_PATH$mod/images/line_0.gif border=0>";
//Если нет, то вставляем заборчик родителя+палочку
else
echo "$p_num<img src=$MOD_PATH$mod/images/linemiddle.gif border=0>";
}
////////////Выводи маркер/////////////////////////////////////////////////////
$sql_el="SELECT * FROM c_tree WHERE level=$level and right_key>$right_key and left_key>$left_key and parent_id=$parent_id";
$result_el=mysql_query($sql_el);
if (mysql_num_rows($result_el)==0) {
echo"<img src=$MOD_PATH$mod/images/joinbottom.gif border=0>";
}
else
echo"<img src=$MOD_PATH$mod/images/joinmiddle.gif border=0>";
////////////////////////////////////////////////////////////////////////
echo "<a href=?mod=$mod&action=add_cat&id=$id>".$name.$level.'</a><br>';