Beispiel #1
0
function TagsDiff($Ntags, $Otags, $indexId = "0", $sortid = '0')
{
    global $iCMS, $Admin;
    $N = TagsArray($Ntags);
    $O = TagsArray($Otags);
    $diff = array_diff_values($N, $O);
    if ($diff['+']) {
        foreach ($diff['+'] as $tag) {
            //新增
            TagUI($tag, $indexId, $sortid);
        }
    }
    if ($diff['-']) {
        foreach ($diff['-'] as $tid => $tag) {
            //减少
            $_count = iCMS_DB::getValue("SELECT `count` FROM `#iCMS@__tags` WHERE `id`='{$tid}'");
            if ($_count == 1) {
                iCMS_DB::query("DELETE FROM `#iCMS@__tags`  WHERE `id`='{$tid}'");
                iCMS_DB::query("DELETE FROM `#iCMS@__taglist` WHERE `tid`='{$tid}'");
            } else {
                iCMS_DB::query("UPDATE `#iCMS@__tags` SET  `count`=count-1,`updatetime`='" . time() . "'  WHERE `id`='{$tid}'");
                iCMS_DB::query("DELETE FROM `#iCMS@__taglist` WHERE `indexId`='{$indexId}' and `tid`='{$tid}' and `modelId`='0'");
            }
        }
    }
}
Beispiel #2
0
function TagsDiff($Ntags, $Otags)
{
    global $iCMS, $Admin;
    $N = TagsArray($Ntags);
    $O = TagsArray($Otags);
    $diff = array_diff_values($N, $O);
    if ($diff['+']) {
        foreach ($diff['+'] as $tag) {
            //新增
            TagUI($tag);
        }
    }
    if ($diff['-']) {
        foreach ($diff['-'] as $tid => $tag) {
            //减少
            $c = $iCMS->db->getValue("SELECT `count` FROM `#iCMS@__tags` WHERE `id`='{$tid}'");
            if ($c == "1") {
                $iCMS->db->query("DELETE FROM `#iCMS@__tags`  WHERE `id`='{$tid}'");
            } else {
                $iCMS->db->query("UPDATE `#iCMS@__tags` SET  `count`=count-1  WHERE `id`='{$tid}'");
            }
        }
    }
}