Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Удаление ветки дерева.

506
31 марта 2003 года
evgen
20 / / 20.12.1999
Есть таблица (дерево)
ID Name Parent_ID
1 name 0
2 name1 1
...

где ID уникален а Parent_ID это связь с родителем, так вот можно сделать SQL запрос чтоб удалить всю ветку, а если нельзя то как можно это сделать наиболее хорошо...
283
01 апреля 2003 года
Alone
910 / / 20.11.2002
хм...
я так понял
Parent_ID хранит ID "родителя"
и зная Parent_ID тебе нужно удалить все связанные строки?
WHERE (ID='5' OR Parent_ID='5')
так не работает чтоли ?
506
01 апреля 2003 года
evgen
20 / / 20.12.1999
Цитата:
Originally posted by Alone
хм...
я так понял
Parent_ID хранит ID "родителя"
и зная Parent_ID тебе нужно удалить все связанные строки?
WHERE (ID='5' OR Parent_ID='5')
так не работает чтоли ?



Так то работает ... только потомки тех у кого Parent_ID='5' остануться...
Я решил проблему...

Код:
function RemoveTree($idd)
                              {
                              $query = "SELECT * FROM levels WHERE parent=".$idd;
//echo $query;
                              $result = mysql_query($query) or die ("не могу взять из базы del");
                              while(($row = mysql_fetch_array($result)) != false)
                                                  {
                                                 
                                                  $q = "DELETE FROM levels WHERE id=".$row["id"];
                                          $r = mysql_query($q) or die ("Не могу удалить");
                                                  RemoveTree($row["id"]);
                                                  }
                              }
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог