удаления ветви из дерева

  • Автор темы Автор темы IgorCH
  • Дата начала Дата начала

IgorCH

Новичок
удаления ветви из дерева

Есть стандартная стукрура базы каталога
ID TITLE PID

Как организовать удаления Раздела с его подразделами, под подразделами, …?
 
также как ты делаешь другие операции с этим деревом - рекурсивно

-~{}~ 19.10.06 17:28:

440hz все гениальное просто ;-)
 
можно пожалуйста пример именно удаления, не постройки дерева?
 
PHP:
	function delete($cat_id) {
		$sql="DELETE FROM ".CATS_TABLE." WHERE id='".$cat_id."' LIMIT 1";
		mysql_query($sql) or $this->error(mysql_error());
		if ($this->is_parent($cat_id)) {
			$sql="SELECT * FROM ".CATS_TABLE." WHERE parent_id='".$cat_id."'";
			$result=mysql_query($sql) or $this->error(__METHOD__, mysql_error());
			while ($row=mysql_fetch_assoc($result)) {
				$this->delete($row['id']);
			}
		}
		return true;
	}

вот пример...

-~{}~ 19.10.06 17:52:

функция вырвана из класа, но думаю более-менне понятно
 
вынул все где pid=id
удалил их
теперь перебираешь все что вынул и с ними все тоже самое...
 
Сверху