删除无限分类并同时删除它下面的所有子分类的方法

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

$act = isset ($_GET['act']) ? trim ($_GET['act']) : ";
if ($act == 'del')
{
$sort_id = isset ($_GET['id']) ? intval($_GET['id']) : '0' ;
$sort_ids = $sort_id;
$childrenIds = getChildrenIds ($sort_id);
if (!empty ($childrenIds))
{
$sort_ids .= $childrenIds;
}
$sql = “delete from `article_sort` WHERE `sort_id` in ({$sort_ids})";
$res = mysql_query ($sql);
if ($res)
{
alert ('删除成功');
exit;
}
else
{
alert ('删除失败');
exit;
}
}

getChildrenIds 这个函数以前已经给出来过,不清楚的请参考 自定义函数之获取无限分类ID下的子类ID集

自定义函数之获取无限分类ID下的子类ID集
复制代码 代码如下:

/*—————————————————— */
//– 获取无限分类ID下面的子类ID集
//– $sort_id = $sort_id.getChildrenIds($sort_id);
//– $sql = " ….. where sort_id in ($sort_id)";
/*—————————————————— */
function getChildrenIds ($sort_id)
{
global $db;
$ids = ";
$sql = "SELECT * FROM ".$db->table('article_sort')." WHERE `parent_id` = '{$sort_id}'";
$res = $db->query ($sql);
if ($res)
{
while ($row = $db->fetch_assoc ($res))
{
$ids .= ','.$row['sort_id'];
$ids .= getChildrenIds ($row['sort_id']);
}
}
return $ids;
}

相关文章

解析PHP中$_FILES的使用以及注意事项

$_FILES数组内容如下:$_FILES['myFile']['name'] 客户端文件的原名称。$_FILES['myFile']['type'] 文件的 MIME 类型,需要浏览器...

浅谈PHP中的Trait使用方法

浅谈PHP中的Trait使用方法

概述 在PHP中有一种代码复用的技术, 因为单继承的问题, 有些公共方法无法在父类中写出, 而 Trait可以应对这种情况, 它可以定义一些复用的方法, 然后在你需要使用的类中将其引入即...

PHP中__FILE__、dirname与basename用法实例分析

本文实例讲述了PHP中__FILE__、dirname与basename用法。分享给大家供大家参考。具体方法如下: 在php中__FILE__当前运行文件的完整路径和文件名,如果用在被包...

编写Smarty插件在模板中直接加载数据的详细介绍

之前使用smarty的时候,通常是在php程序端读取数据(一般从数据库),然后assign给模板的变量,才可以在前端使用这个变量。这样不是不好,只是数据多的时候php端的代码维护起来有点...

php下封装较好的数字分页方法

复制代码 代码如下:/** * 获取页码导航HTML * @param $pageNum:当前页码 * @param $pageSize:每页数量 * @param $rowCount:...