>  기사  >  백엔드 개발  >  삭제 문제 - PHP에서 제품 카테고리를 삭제하는 방법은 무엇입니까?

삭제 문제 - PHP에서 제품 카테고리를 삭제하는 방법은 무엇입니까?

WBOY
WBOY원래의
2016-09-01 00:20:161075검색

<code>您的位置:商品分类栏目
分类ID    分类树    分类名称    父类ID    父类路径    商品分类管理

6  家电    0    0,    修改 | 复制 | 删除

15 黑白电视机    6    0,6,    修改 | 复制 | 删除

27 洗衣机    6    0,6,    修改 | 复制 | 删除

28 液晶电视机    6    0,6,    修改 | 复制 | 删除

3  女装    0    0,    修改 | 复制 | 删除

12 休闲裤    3    0,3,    修改 | 复制 | 删除

7 手机    0    0,    修改 | 复制 | 删除

8 iphone    7    0,7,    修改 | 复制 | 删除

10 iphone6s    8    0,7,8,    修改 | 复制 | 删除

9 华为    7    0,7,    修改 | 复制 | 删除

11 华为mate9    9    0,7,9,    修改 | 复制 | 删除

19 vivo    7    0,7,    修改 | 复制 | 删除

26 vivoX7    19    0,7,19,    修改 | 复制 | 删除


//上表怎么做商品分类删除?删除父级分类=父级+子级
$id=$_GET['id'];
        $sql="select path from type WHERE path like '%$id%'";
        $rs=mysql_query($sql);
        $arr=mysql_fetch_assoc($rs);
       if($arr){
          $path=" and path like '%$id%'";
        }else{
            $path='';
        }
        $where="where id={$id}{$path}";
        $sql2="delete from type $where";
        //echo $sql2;die();
        $rs=mysql_query($sql2);
        if(mysql_affected_rows()>0){
            echo '删除成功';
        }else{
            echo '删除失败';
        }
        break;
//我写的代码为什么不能删除有子级分类的商品呢?只能把子分类删完才能执行父类
//是where and的前后顺序问题吗?

比如删除女装是,需要先把休闲裤删了才行,但我想直接删完,应该怎么做呢??</code>

답글 내용:

<code>您的位置:商品分类栏目
分类ID    分类树    分类名称    父类ID    父类路径    商品分类管理

6  家电    0    0,    修改 | 复制 | 删除

15 黑白电视机    6    0,6,    修改 | 复制 | 删除

27 洗衣机    6    0,6,    修改 | 复制 | 删除

28 液晶电视机    6    0,6,    修改 | 复制 | 删除

3  女装    0    0,    修改 | 复制 | 删除

12 休闲裤    3    0,3,    修改 | 复制 | 删除

7 手机    0    0,    修改 | 复制 | 删除

8 iphone    7    0,7,    修改 | 复制 | 删除

10 iphone6s    8    0,7,8,    修改 | 复制 | 删除

9 华为    7    0,7,    修改 | 复制 | 删除

11 华为mate9    9    0,7,9,    修改 | 复制 | 删除

19 vivo    7    0,7,    修改 | 复制 | 删除

26 vivoX7    19    0,7,19,    修改 | 复制 | 删除


//上表怎么做商品分类删除?删除父级分类=父级+子级
$id=$_GET['id'];
        $sql="select path from type WHERE path like '%$id%'";
        $rs=mysql_query($sql);
        $arr=mysql_fetch_assoc($rs);
       if($arr){
          $path=" and path like '%$id%'";
        }else{
            $path='';
        }
        $where="where id={$id}{$path}";
        $sql2="delete from type $where";
        //echo $sql2;die();
        $rs=mysql_query($sql2);
        if(mysql_affected_rows()>0){
            echo '删除成功';
        }else{
            echo '删除失败';
        }
        break;
//我写的代码为什么不能删除有子级分类的商品呢?只能把子分类删完才能执行父类
//是where and的前后顺序问题吗?

比如删除女装是,需要先把休闲裤删了才行,但我想直接删完,应该怎么做呢??</code>

id=7이거나 '%,7,%'와 같은 경로인 테이블에서 삭제

제 경험에 비추어 다음과 같은 제안을 드립니다.
1. 상품 카테고리 중 카테고리를 삭제할 때 해당 카테고리 아래에 하위 카테고리가 있는지 데이터베이스를 확인해야 합니다. 삭제되었습니다.
2. 이 카테고리를 삭제하기 전에 해당 카테고리의 모든 하위 카테고리를 삭제하고 카테고리 상위 ID에 따라 데이터베이스를 검색해야 합니다.
3. 위 사항을 지키지 않으면 반드시 가비지 데이터가 생성됩니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.