Example #1
0
        if ($advnew['style'] == 'image' || $advnew['style'] == 'flash') {
            if ($_FILES['advnew' . $advnew['style']]) {
                require_once libfile('class/upload');
                $upload = new discuz_upload();
                if ($upload->init($_FILES['advnew' . $advnew['style']], 'common') && $upload->save()) {
                    $advnew[$advnew['style']]['url'] = $_G['setting']['attachurl'] . 'common/' . $upload->attach['attachment'];
                }
            } else {
                $advnew[$advnew['style']]['url'] = $_G['gp_advnew' . $advnew['style']];
            }
        }
        foreach ($advnew[$advnew['style']] as $key => $val) {
            $advnew[$advnew['style']][$key] = dstripslashes($val);
        }
        $advnew['displayorder'] = isset($advnew['displayorder']) ? implode("\t", $advnew['displayorder']) : '';
        $advnew['code'] = encodeadvcode($advnew);
        $extra = $type != 'custom' ? '' : '&customid=' . $parameters['extra']['customid'];
        $advnew['parameters'] = addslashes(serialize(array_merge(is_array($parameters) ? $parameters : array(), array('style' => $advnew['style']), $advnew['style'] == 'code' ? array() : $advnew[$advnew['style']], array('html' => $advnew['code']), array('displayorder' => $advnew['displayorder']))));
        $advnew['code'] = addslashes($advnew['code']);
        $query = DB::query("UPDATE " . DB::table('advertisement') . " SET title='{$advnew['title']}', targets='{$advnew['targets']}', parameters='{$advnew['parameters']}', code='{$advnew['code']}', starttime='{$advnew['starttime']}', endtime='{$advnew['endtime']}' WHERE advid='{$advid}'");
        updatecache('advs');
        updatecache('setting');
        if ($operation == 'edit') {
            cpmsg('adv_succeed', $_G['gp_referer'], 'succeed');
        } else {
            cpmsg('adv_succeed', 'action=adv&operation=edit&advid=' . $advid . $extra, 'succeed');
        }
    }
} elseif ($operation == 'list') {
    shownav('global', 'adv_admin');
    showsubmenu('adv_admin', array(array('adv_admin_list', 'adv&operation=list', 1), array('adv_admin_listall', 'adv&operation=ad', 0)));
    foreach ($advnew as $k => $v) {
        if ($k == 'flashheight') {
            $advarr = array('height' => $advnew['flashheight'], 'width' => $advnew['flashwidth'], 'url' => $advnew['flashurl'], 'style' => 'flash');
        } elseif ($k == 'imageheight') {
            $advarr = array('height' => $advnew['imageheight'], 'width' => $advnew['imagewidth'], 'url' => $advnew['imagesrc'], 'link' => $advnew['imageurl'], 'alt' => $advnew['imagealt'], 'style' => 'image');
        } elseif ($k == 'textcontent') {
            $advarr = array('title' => $advnew['textcontent'], 'link' => $advnew['texturl'], 'size' => $advnew['textsize'], 'style' => 'text');
        } elseif ($advnew['type'] == 'html') {
            $advarr = array('style' => 'code');
        }
    }
    if ($advarr['style'] == 'code') {
        $html = $advarr['html'] = $advnew['html'];
        $html = daddslashes($html);
    } else {
        $html = daddslashes(encodeadvcode($advarr));
        $advarr['html'] = $html;
    }
    $advarr = daddslashes($advarr);
    $parameters = serialize($advarr);
    $ad = daddslashes($ad, 1);
    $db_target->query("INSERT INTO {$table_target} SET `available`='" . $ad[available] . "',`type`='" . $ad[pagetype] . "',`displayorder`='" . $ad[system] . "',`parameters`='" . $parameters . "',`title`='" . $ad[title] . "',`targets`='home',`code`='" . $html . "'");
}
$res = $db_target->fetch_first("SELECT * FROM {$db_target->tablepre}common_advertisement_custom WHERE name='UCHOME'");
if (!$res) {
    $db_target->query("INSERT INTO {$db_target->tablepre}common_advertisement_custom SET `name`='UCHOME'");
}
if ($nextid) {
    showmessage("繼續轉換數據表 " . $table_source . " adid> {$nextid}", "index.php?a={$action}&source={$source}&prg={$curprg}&start={$nextid}");
}
function encodeadvcode($advnew)