我无法使此功能正常工作。这是我的数据库设计
我正在一个应用程序中工作,其中当用户删除父类别时,所有子类别也将被删除,等等等等。例如:
当用户在我的应用程序中单击“Test1”类别时,“Test1.1”和“Test1.1.1”将被删除,因为它位于“Test1”类别下。
这是我的数据库设计(上图)。
这是我写的代码:
function DeleteProjectPhotos( $cat_id ) {
$sql = "SELECT * FROM project_category WHERE category_id = '$cat_id'";
$query = mysql_query( $sql ) or die( mysql_error() );
if( mysql_num_rows( $query ) > 0 ) {
$sql = "SELECT * FROM project_category WHERE parent_id = '$cat_id'";
$query = mysql_query( $sql ) or die( mysql_error() );
if( mysql_num_rows( $query ) > 0 ) {
while( $row = mysql_fetch_assoc( $query ) ) {
$this->DeleteProjectPhotos( $row['category_id'] );
}
} else {
$sql = "DELETE FROM project_category WHERE category_id = '$cat_id'";
$query = mysql_query( $sql ) or die( mysql_error() );
}
}
}
但我认为这里的整个逻辑是错误的,因为当我尝试删除 category_id 33 时,所有内容都不会被删除。请教我如何做这个。
您的帮助将不胜感激和奖励!
谢谢!:)