ecshop删除商品及记录的函数

ECSHOP商品与文章删除时同时删除商品图片,修改ecshop删除解决商品名称标题后面的省略号,ecshop删除商品及记录的函数,ecshop删除商品函数,下面小编来给大家介绍一下,一起来了解一下吧!

/**

 * 从回收站删除多个商品

 * @param   mix     $goods_id   商品id列表:可以逗号格开,也可以是数组

 * @return  void

 */

function delete_goods($goods_id)

{

    if (empty($goods_id))

    {

        return;

    }



    /* 取得有效商品id */

    $sql = "SELECT DISTINCT goods_id FROM " . $GLOBALS['ecs']->table('goods') .

            " WHERE goods_id " . db_create_in($goods_id) . " AND is_delete = 1";

    $goods_id = $GLOBALS['db']->getCol($sql);

    if (empty($goods_id))

    {

        return;

    }



    /* 删除商品图片和轮播图片文件 */

    $sql = "SELECT goods_thumb, goods_img, original_img " .

            "FROM " . $GLOBALS['ecs']->table('goods') .

            " WHERE goods_id " . db_create_in($goods_id);

    $res = $GLOBALS['db']->query($sql);

    while ($goods = $GLOBALS['db']->fetchRow($res))

    {

        if (!empty($goods['goods_thumb']))

        {

            @unlink('../' . $goods['goods_thumb']); // 节约空间

        }

        if (!empty($goods['goods_img']))

        {

            @unlink('../' . $goods['goods_img']);

        }

        if (!empty($goods['original_img']))

        {

            @unlink('../' . $goods['original_img']);

        }

    }



    /* 删除商品 */

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('goods') .

            " WHERE goods_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);



    /* 删除商品的货品记录 */

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('products') .

            " WHERE goods_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);



    /* 删除商品相册的图片文件 */

    $sql = "SELECT img_url, thumb_url, img_original " .

            "FROM " . $GLOBALS['ecs']->table('goods_gallery') .

            " WHERE goods_id " . db_create_in($goods_id);

    $res = $GLOBALS['db']->query($sql);

    while ($row = $GLOBALS['db']->fetchRow($res))

    {

        if (!empty($row['img_url']))

        {

            @unlink('../' . $row['img_url']);

        }

        if (!empty($row['thumb_url']))

        {

            @unlink('../' . $row['thumb_url']);

        }

        if (!empty($row['img_original']))

        {

            @unlink('../' . $row['img_original']);

        }

    }



    /* 删除商品相册 */

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('goods_gallery') . " WHERE goods_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);



    /* 删除相关表记录 */

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('collect_goods') . " WHERE goods_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('goods_article') . " WHERE goods_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('goods_attr') . " WHERE goods_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('goods_cat') . " WHERE goods_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('member_price') . " WHERE goods_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('group_goods') . " WHERE parent_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('group_goods') . " WHERE goods_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('link_goods') . " WHERE goods_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('link_goods') . " WHERE link_goods_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('tag') . " WHERE goods_id " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('comment') . " WHERE comment_type = 0 AND id_value " . db_create_in($goods_id);

    $GLOBALS['db']->query($sql);



    /* 删除相应虚拟商品记录 */

    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('virtual_card') . " WHERE goods_id " . db_create_in($goods_id);

    if (!$GLOBALS['db']->query($sql, 'SILENT') && $GLOBALS['db']->errno() != 1146)

    {

        die($GLOBALS['db']->error());

    }



    /* 清除缓存 */

    clear_cache_files();

}

更多教程关注FF推源码网。

提供最优质的资源集合

立即查看 了解详情