function paddslashes($data) { if (is_array($data)) { foreach ($data as $key => $val) { $data[paddslashes($key)] = paddslashes($val); } } else { $data = str_replace('\\"', '"', addslashes($data)); } return $data; }
function rules_add($rules_data) { if (!$rules_data) { return; } $rules_data = serialize_iconv($rules_data); $rules_data = get_table_field_name('strayer_rules', $rules_data); $rules_hash = $rules_data['rules_hash']; $check = DB::result(DB::query("SELECT COUNT(*) FROM " . DB::table('strayer_rules') . " WHERE rules_hash ='" . $rules_hash . "'"), 0); $rules_data = paddslashes($rules_data); unset($rules_data['rid']); del_search_index(2); if ($check) { DB::update("strayer_rules", $rules_data, array("rules_hash" => $rules_hash)); return 1; } else { $pid = DB::insert('strayer_rules', $rules_data, TRUE); return 2; } }
function pick_reg($info) { $member = $info; extract($info); global $_G; loaducenter(); require_once libfile('function/misc'); require_once libfile('function/profile'); include_once libfile('class/member'); $activation = array(); if (!$activation) { $usernamelen = dstrlen($username); if ($usernamelen < 3) { return milu_lang('too_short'); } elseif ($usernamelen > 15) { return milu_lang('too_long'); } $username = addslashes(trim(dstripslashes($username))); $email = trim($email); } if (!$activation) { $uid = uc_user_register($username, $password, $email, $questionid, $answer, $_G['clientip']); if ($uid <= 0) { if ($uid == -1) { return milu_lang('bad_word'); } elseif ($uid == -2) { return milu_lang('system_bad_word'); } elseif ($uid == -3) { return milu_lang('reged'); } elseif ($uid == -4) { return milu_lang('wrong_email'); } elseif ($uid == -5) { return milu_lang('bad_email'); } elseif ($uid == -6) { return milu_lang('email_reged'); } else { return milu_lang('unknow_error'); } } } else { list($uid, $username, $email) = $activation; } if (DB::result_first("SELECT uid FROM " . DB::table('common_member') . " WHERE uid='{$uid}'")) { if (!$activation) { uc_user_delete($uid); } return milu_lang('uid_reged'); } $init_arr = explode(',', $_G['setting']['initcredits']); $groupinfo['groupid'] = $_G['setting']['newusergroupid']; $password = md5(random(10)); $secques = $questionid > 0 ? random(8) : ''; //用户资料 $profile['constellation'] = get_constellation($birthmonth, $birthday); $profile['zodiac'] = get_zodiac($birthyear); $profile['gender'] = $gender == milu_lang('baomi') ? 0 : ($gender == milu_lang('man') ? 1 : 0); $profile_field_arr = array('birthyear', 'birthmonth', 'birthday', 'birthprovince', 'birthcity', 'birthdist', 'birthcommunity', 'resideprovince', 'residecity', 'residedist', 'residecommunity', 'residesuite', 'site', 'bio', 'interest', 'idcardtype', 'idcard', 'bloodtype', 'height', 'weight', 'qq', 'msn', 'taobao', 'yahoo', 'icq', 'alipay', 'lookingfor', 'position', 'occupation', 'education', 'company', 'graduateschool', 'revenue', 'telephone', 'mobile', 'constellation', 'realname', 'zodiac', 'affectivestatus'); foreach ($profile_field_arr as $k => $v) { $profile[$v] = ${$v}; } $lastactivity = rand($regdate, $regdate + 3600 * 24 * 2); if ($regipsql) { DB::query($regipsql); } $credits = 0; if (!empty($_G['setting']['creditsformula'])) { eval("\$credits = round(" . $_G['setting']['creditsformula'] . ");"); } $userdata = array('uid' => $uid, 'username' => $username, 'password' => $password, 'email' => $email, 'adminid' => 0, 'groupid' => $groupinfo['groupid'], 'regdate' => $regdate, 'credits' => $credits, 'timeoffset' => 9999); $status_data = array('uid' => $uid, 'regip' => $regip, 'lastip' => $lastip, 'lastvisit' => $lastvisit, 'lastactivity' => $lastactivity, 'lastpost' => $lastpost, 'lastsendmail' => 0); $profile['uid'] = $uid; $field_forum['uid'] = $uid; $field_forum['sightml'] = $sightmlm; $field_home['uid'] = $uid; DB::insert('common_member', paddslashes($userdata)); DB::insert('common_member_status', paddslashes($status_data)); DB::insert('common_member_profile', paddslashes($profile)); DB::insert('common_member_field_forum', paddslashes($field_forum)); DB::insert('common_member_field_home', paddslashes($field_home)); if ($verifyarr) { $setverify = array('uid' => $uid, 'username' => $username, 'verifytype' => '0', 'field' => daddslashes(serialize($verifyarr)), 'dateline' => $lastactivity); DB::insert('common_member_verify_info', $setverify); DB::insert('common_member_verify', array('uid' => $uid)); } $count_data = array('uid' => $uid, 'oltime' => $oltime ? $oltime : 0, 'extcredits1' => $extcredits1 ? $extcredits1 : $init_arr[1], 'extcredits2' => $extcredits2 ? $extcredits2 : $init_arr[2], 'extcredits3' => $extcredits3 ? $extcredits3 : $init_arr[3], 'extcredits4' => $extcredits4 ? $extcredits4 : $init_arr[4], 'extcredits5' => $extcredits5 ? $extcredits5 : $init_arr[5], 'extcredits6' => $extcredits6 ? $extcredits6 : $init_arr[6], 'extcredits7' => $extcredits7 ? $extcredits7 : $init_arr[7], 'extcredits8' => $extcredits8 ? $extcredits8 : $init_arr[8]); DB::insert('common_member_count', paddslashes($count_data)); DB::insert('common_setting', array('skey' => 'lastmember', 'svalue' => $username), false, true); manyoulog('user', $uid, 'add'); $totalmembers = DB::result_first("SELECT COUNT(*) FROM " . DB::table('common_member')); $userstats = array('totalmembers' => $totalmembers, 'newsetuser' => $username); checkusergroup($uid); //更新用户所在的用户组 save_syscache('userstats', $userstats); $re_arr['uid'] = $uid; return $re_arr; }
function write_evo_errlog($data, $url, $rule_info, $type = 0) { global $_G; if (!$rule_info || !$url) { return; } if ($data['title'] && $data['content']) { return; } if (!$data['title'] && $data['content']) { $why = 1; } else { if (!$data['content'] && $data['title']) { $why = 2; } else { $why = 0; } } $p_key = 'id'; if (!$type) { if (array_key_exists('url_var', $rule_info)) { //内置规则 $type = 2; $p_key = 'rid'; } else { if (array_key_exists('evo_title_info', $rule_info)) { //学习到的规则 $type = 3; } else { $type = 1; } } } if (!$rule_info[$p_key]) { return; } $set['why'] = $why; $set['dateline'] = $_G['timestamp']; $set['type'] = $type; $set['url'] = $url; $set['data_id'] = $rule_info[$p_key]; $set['rules_name'] = $rule_info['rules_name']; $count = DB::result(DB::query("SELECT COUNT(*) FROM " . DB::table('strayer_evo_log') . " WHERE type='{$type}' AND data_id='{$rule_info[$p_key]}' AND url='" . daddslashes($url) . "'"), 0); if ($count) { return; } $set = paddslashes($set); return DB::insert('strayer_evo_log', $set, TRUE); }
function import_article_data($data, $pid = '') { $pid = $pid ? $pid : intval($_GET['pid']); if (!is_array($data)) { return; } $c = 0; foreach ($data as $k => $v) { $content_arr = $v['is_bbs'] == 1 ? $v['reply'] : $v['content_arr']; unset($v['content_arr'], $v['reply']); $v = paddslashes($v); if (!$v['url_hash']) { continue; } $count = DB::result(DB::query("SELECT COUNT(*) FROM " . DB::table('strayer_article_title') . " WHERE url_hash='{$v['url_hash']}' AND pid='{$pid}'"), 0); if ($count) { continue; } $v['pid'] = $pid; unset($v['aid']); $aid = DB::insert('strayer_article_title', $v, TRUE); $c++; unset($setarr); foreach ($content_arr as $k2 => $v2) { $v2['aid'] = $aid; unset($v2['cid']); $v2 = paddslashes($v2); $cid = DB::insert('strayer_article_content', $v2, TRUE); } } return $c; }
function evo_set($info) { global $_G; if (!$info) { return; } if (strlen($info['text']['html']) < 200 || strlen($info['title']['html']) < 10) { return; } //标题和内容太短都不行 $link_count = own_link_count($info['text']['html'], $this->url); if ($link_count > 10) { return FALSE; } //有10个指向自己的链接,就不行 $milu_set = pick_common_get(); if ($milu_set['fp_open_evo'] != 1) { return FALSE; } $text_info = $this->dom_info_arr[$info['text']['key']]; $title_info = $this->dom_info_arr[$info['title']['key']]; $text_info['html'] = $info['text']['html']; $title_info['html'] = $info['title']['html']; $info['title_split_arr'] = $this->get_split_arr($title_info); $info['text_split_arr'] = $split_arr = $this->get_split_arr($text_info); unset($text_info['outertext'], $text_info['parent']['outertext'], $title_info['outertext'], $title_info['parent']['outertext'], $text_info['html'], $title_info['html']); if (strlen($split_arr[0]) < 14) { return FALSE; } pload('F:copyright'); $host_info = GetHostInfo($this->url); $domain = $host_info['host']; $domain_hash = md5($domain); if (preg_match('/\\d+/', $split_arr[0])) { $s_arr = preg_split("/[\\d]+/", $split_arr[0]); $split_arr[0] = $s_arr[0]; foreach ((array) $s_arr as $k => $v) { if (strlen($v) > strlen($split_arr[0])) { $split_arr[0] = $v; } } } if (!$title_info) { return FALSE; } $result_info['evo_title_info'] = $title_info; $setarr = array('content_get_type' => 0, 'detail_ID' => $split_arr[0], 'detail_ID_hash' => md5($split_arr[0]), 'detail_ID_test' => $this->url, 'content_rules' => '', 'evo_text_info' => serialize($text_info), 'evo_title_info' => serialize($title_info), 'domain_hash' => $domain_hash, 'domain' => $domain, 'status' => 0, 'dateline' => $_G['timestamp']); $setarr = paddslashes($setarr); $base_sql = "SELECT * FROM " . DB::table('strayer_evo') . " WHERE domain_hash='{$domain_hash}' AND detail_ID_hash='" . $setarr['detail_ID_hash'] . "' AND status=0"; $data_info = DB::fetch_first($base_sql . " AND detail_ID_test!='{$this->url}'"); $data_info = pstripslashes($data_info); if (!$data_info) { //还没有资料 if (!($check = DB::result(DB::query("SELECT COUNT(*) FROM " . DB::table('strayer_evo') . " WHERE domain_hash='{$domain_hash}' AND detail_ID_hash='" . $setarr['detail_ID_hash'] . "' AND status=0 AND detail_ID_test='{$this->url}'"), 0))) { DB::insert('strayer_evo', $setarr, TRUE); } $result_info['status'] = 'no'; return $result_info; } else { //有了资料 $title_rules = $this->get_rules($info, $title_info, $data_info, 'title'); $text_rules = $this->get_rules($info, $text_info, $data_info, 'text'); //删除之前的一些记录,防止没有索引的情况下重复生成规则 $check_info = DB::fetch_first("SELECT * FROM " . DB::table('strayer_evo') . " WHERE domain_hash='{$domain_hash}' AND detail_ID_hash='" . $setarr['detail_ID_hash'] . "' AND status=1"); DB::query('DELETE FROM ' . DB::table('strayer_evo') . " WHERE id='{$check_info['id']}'"); DB::query('DELETE FROM ' . DB::table('strayer_searchindex') . " WHERE id='{$check_info['id']}' AND type='34'"); if ($text_rules) { $setarr = array('content_get_type' => $text_rules['get_type'], 'content_rules' => $text_rules['rules'], 'theme_get_type' => $title_rules['get_type'], 'theme_rules' => $title_rules['rules'], 'status' => 1); DB::update("strayer_evo", $setarr, array("id" => $data_info['id'])); $pash_hash = get_path_hash($this->url); add_search_index($domain_hash, $path_hash, 34, $data_info['id']); //添加索引 4是本地缓存 $pick_set = get_pick_set(); if ($pick_set['open_cloud_pick'] == 1) { //开启云采集,将规则上传到服务端 $rpcClient = rpcClient(); unset($setarr['status']); $data_info['content_get_type'] = $setarr['content_get_type']; $data_info['content_rules'] = $setarr['content_rules']; $data_info['theme_get_type'] = $setarr['theme_get_type']; $data_info['theme_rules'] = $setarr['theme_rules']; $client_info = get_client_info(); $re = $rpcClient->upload_evo_data($data_info, $client_info); } del_search_index(3); $result_info['status'] = 'ok'; return $result_info; } } }
<?php define('PHPHOTPIC', '0.6.2'); $base = array('time_start' => microtime(), 'name' => $_SERVER['PHP_SELF'], 'dir' => dirname(__FILE__) . '/'); if (!file_exists($base['dir'] . 'data/config.php')) { header('Location: install/install.php'); exit; } require_once $base['dir'] . 'data/config.php'; require_once $base['dir'] . 'source/core.func.php'; require_once $base['dir'] . 'source/mysqldb.class.php'; $base['post'] = paddslashes($_POST); $base['get'] = paddslashes($_GET); $base['cookie'] = paddslashes($_COOKIE); unset($_POST); unset($_GET); unset($_COOKIE); $langset = $base['cookie']['lang'] ? $base['cookie']['lang'] : $config['lang']; require_once $base['dir'] . 'lang/langset.php'; $langset = in_array($langset, array_keys($all_lang)) ? $langset : $base['cookie']['lang']; require_once $base['dir'] . 'lang/' . $langset . '/all.lang.php'; $base['lang'] = $lang; unset($lang); $base['config'] = $config; unset($config); $db = new mysql_database(); if (!$db->connect($base['config']['db'])) { error_report($base['lang']['db_connect_error']); } if ($base['get']['mod'] == '') { $base['get']['mod'] = 'index';
$setarr['reply_is_extend'] = 0; } $setarr = paddslashes($setarr); $data_info = get_pick_info(); if ($data_info['cron_day'] == 0) { $data_info['cron_day'] = -1; } //数据库中的字段类型为未签署,导致没法小于0 if ($data_info['cron_minute'] != $setarr['cron_minute'] || $data_info['cron_hour'] != $setarr['cron_hour'] || $data_info['cron_day'] != $setarr['cron_day'] || $data_info['cron_weekday'] != $setarr['cron_weekday']) { //计划任务修改时,把下次执行时间清空 save_syscache('pick_run', TIMESTAMP); $setarr['lastrun'] = $setarr['nextrun'] = 0; } DB::update('strayer_picker', $setarr, array('pid' => $pid)); $url = PICK_GO . 'picker_manage'; } else { $msg = milu_lang('add'); $setarr = paddslashes($setarr); $setarr['picker_hash'] = create_hash(); $pid = DB::insert('strayer_picker', $setarr, TRUE); } $url = PICK_GO . 'picker_manage&myaction=edit_pick&pid=' . $pid . '&step=' . $_GET['step']; if (!$pid) { cpmsg_error($msg . milu_lang('fail')); } cpmsg(milu_lang('pick_op_finsh', array('msg' => $msg)), $url, 'succeed'); } if (!$info['jump_num']) { $info['jump_num'] = $pick_config['pick_num']; } include template('milu_pick:picker_edit');
function article_edit() { global $_G; include_once libfile('function/portalcp'); include_once libfile('function/spacecp'); include_once libfile('function/home'); require_once libfile('function/forumlist'); pload('F:spider'); if ($_GET['submit']) { $setarr = $_GET['set']; if (check_uid($setarr['uid']) == 'no') { cpmsg_error(milu_lang('user_no_exists')); } $pick_common_set = get_pick_set(); $pid = intval($_GET['pid']); $p_arr = get_pick_info($pid); $setarr['portal_cid'] = $_GET['portal']; $setarr['forum_fid'] = $_GET['forums']; $setarr['forum_typeid'] = $_GET['threadtypeid']; $setarr['blog_big_cid'] = $_GET['blog']; $setarr['blog_small_cid'] = $_GET['classid']; $setarr['title'] = getstr(trim($setarr['title']), 80, 1, 1); if (strlen($setarr['title']) < 1) { cpmsg_error(milu_lang('title_no_empty')); } if (empty($setarr['summary'])) { $setarr['summary'] = portalcp_get_summary(stripslashes($_GET['message'])); } $set_arr['summary'] = addslashes($setarr['summary']); $setarr['public_time'] = strtotime($setarr['public_time']); $setarr['from'] = dhtmlspecialchars($setarr['from']); $setarr['article_tag'] = dhtmlspecialchars($setarr['article_tag']); $setarr['fromurl'] = str_replace('&', '&', dhtmlspecialchars($setarr['fromurl'])); $aid = intval($_GET['aid']); $pid = intval($_GET['pid']); $status = intval($_GET['status']); $relatedarr = array(); if ($_GET['raids']) { $relatedarr = array_map('intval', $_GET['raids']); $relatedarr = array_unique($relatedarr); $relatedarr = array_filter($relatedarr); $setarr['raids'] = serialize($relatedarr); } $setarr['tag'] = article_make_tag($_GET['tag']); $setarr['last_modify'] = $_G['timestamp']; $user_info = get_user_info($setarr['uid']); $setarr['username'] = $user_info['username']; $article_arr = $setarr; DB::update('strayer_article_title', paddslashes($setarr), array('aid' => $aid)); $article_arr['is_download_img'] = $setarr['is_download_img']; $article_arr['is_water_img'] = $setarr['is_water_img']; $setarr = array(); $content = $_GET['message']; if (!$_GET['is_bbs']) { $regexp = '/(###NextPage(\\[title=(.*?)\\])?###)+/'; preg_match_all($regexp, $content, $arr); $contents = preg_split($regexp, $content); DB::delete('strayer_article_content', "aid='{$aid}'"); foreach ($contents as $k => $v) { $v = dstripslashes($v); $setarr['content'] = trim($v); $setarr['pageorder'] = $k + 1; $setarr['aid'] = $aid; $setarr['dateline'] = $_G['timestamp']; $article_arr['content_arr'][$k] = $setarr; DB::insert("strayer_article_content", paddslashes($setarr), true); } } else { //如果是带回复的 $setarr['content'] = trim($content); $setarr = dstripslashes($setarr); DB::update("strayer_article_content", paddslashes($setarr), array('aid' => $aid, 'pageorder' => 1)); } //var_dump($aid);exit(); $setarr = array(); $article_view_url = ''; if ($_GET['public_flag']) { $select = $_GET['select']; $article_arr['is_bbs'] = $_GET['is_bbs']; $article_arr['contents'] = $article_arr['is_bbs'] ? 1 : count($contents); $article_arr['content'] = dstripslashes(clear_ad_html($_GET['message'])); $article_arr['public_reply_seq'] = $p_arr['public_reply_seq']; $article_arr['is_public_reply'] = $p_arr['is_public_reply']; $article_arr['reply_uid'] = $p_arr['reply_uid']; $article_arr['is_page_public'] = $p_arr['is_page_public']; if ($p_arr['is_word_replace'] == 1) { //同义词替换 if ($article_arr['is_bbs'] != 1 && $article_arr['contents'] > 0) { //有几页的文章 $article_arr['content_arr'] = article_words_replace($article_arr['content_arr']); } $article_arr['content'] = article_words_replace($article_arr['content']); $article_arr['title'] = article_words_replace($article_arr['title']); if ($article_arr['reply']) { $article_arr['reply'] = article_words_replace($article_arr['reply']); } } $article_arr['content'] = str_replace("###NextPage###", "<\\br>", $article_arr['content']); $arr['content'] = htmlspecialchars_decode($arr['content'], ENT_QUOTES); $arr['content'] = format_html($arr['content']); $data_article_arr = article_info($aid); $is_timing = $pick_common_set['is_timing']; //if(!VIP) $is_timing = 0; //发布时间大于当前时间,放入定时发布中 if ($article_arr['public_time'] > $_G['timestamp'] && $is_timing == 1 && $aid) { if ($select == 1) { //门户 $timing_public_arr['portal'] = $article_arr['portal_cid']; } else { if ($select == 2) { //论坛 $timing_public_arr['forums'] = $article_arr['forum_fid']; $timing_public_arr['threadtypeid'] = $article_arr['forum_typeid']; } else { $timing_public_arr['blog'] = $article_arr['blog_big_cid']; $timing_public_arr['classid'] = $article_arr['blog_small_cid']; } } $timing_setarr = array('public_type' => $select, 'data_id' => $aid, 'content_type' => 1, 'public_dateline' => $article_arr['public_time'], 'pid' => $pid, 'public_info' => serialize($timing_public_arr)); article_timing_add($timing_setarr); cpmsg(milu_lang('article_public_timming', array('d' => dgmdate($article_arr['public_time'], 'u'))), PICK_GO . 'picker_manage&myfunc=article_edit&aid=' . $aid . '&pid=' . $pid, 'succeed'); return; } if ($select == 1) { //门户 $old_arr['portal_id'] = intval($_GET['old_portal_id']); $article_arr['relatedarr'] = $relatedarr; $setarr['portal_id'] = $article_arr['aid'] = article_move_portal($article_arr, $old_arr); //var_dump($setarr['portal_id']);exit(); $article_arr['cookie'] = $p_arr['login_cookie']; $article_arr['page_url'] = $data_article_arr['url']; $article_arr['is_download_file'] = $p_arr['is_download_file']; $article_arr['content_filter_html'] = unserialize(dstripslashes($p_arr['content_filter_html'])); downremotefile($article_arr, 'portal', $old_arr); article_thumb($setarr['portal_id']); $article_view_url = 'portal.php?mod=view&aid=' . $setarr['portal_id']; } else { if ($select == 2) { //论坛 if ($article_arr['contents'] > 1 && $article_arr['is_bbs'] == 0 && $p_arr['is_page_public'] == 1) { $article_arr['is_public_reply'] = 1; $article_arr['public_reply_seq'] = 0; $article_arr['is_content_reply'] = 1; $article_arr['is_bbs'] = 1; $article_arr['content'] = $article_arr['content_arr'][0]['content']; } else { if ($article_arr['is_bbs'] != 1) { $article_arr['reply'] = array(); } } if ($article_arr['is_bbs']) { $article_arr['reply'] = $data_article_arr['reply']; } $article_arr['cookie'] = $p_arr['login_cookie']; $article_arr['page_url'] = $data_article_arr['url']; $old_arr['forum_id'] = intval($_GET['old_forum_id']); $forum_arr = article_move_forums($article_arr, $old_arr); if ($forum_arr['is_download_img'] == 1) { //下载图片 $forum_arr['cookie'] = $p_arr['login_cookie']; $forum_arr['is_download_img'] = $article_arr['is_download_img']; $forum_arr['is_download_file'] = $p_arr['is_download_file']; $forum_arr['is_water_img'] = $article_arr['is_water_img']; forum_downremotefile($forum_arr, $old_arr); } $setarr['forum_id'] = $article_arr['tid'] = $forum_arr['tid']; $article_view_url = 'forum.php?mod=viewthread&tid=' . $setarr['forum_id']; } else { //博客 $old_arr['catid'] = intval($_GET['old_blog_big_cid']); $old_arr['classid'] = intval($_GET['old_blog_small_cid']); $old_arr['uid'] = intval($_GET['old_uid']); $old_arr['username'] = $_GET['old_username']; $old_arr['blog_id'] = $_GET['old_blog_id']; $setarr['blog_id'] = $article_arr['aid'] = article_move_blog($article_arr, $old_arr); $article_arr['cookie'] = $p_arr['login_cookie']; $article_arr['page_url'] = $data_article_arr['url']; $arr['is_download_file'] = $p_arr['is_download_file']; $arr['content_filter_html'] = unserialize(dstripslashes($p_arr['content_filter_html'])); downremotefile($article_arr, 'album', $old_arr); $article_view_url = 'home.php?mod=space&do=blog&uid=' . $article_arr['uid'] . '&id=' . $setarr['blog_id']; } } $setarr['status'] = 2; DB::update('strayer_article_title', $setarr, array('aid' => $aid)); } $msg = $_GET['public_flag'] ? milu_lang('public') : milu_lang('save'); $return_url = '?' . PICK_GO . 'picker_manage&myac=article_manage&p=1&pid=' . $pid . $_GET['url_args']; $return_list_html = '<a href="' . $return_url . '">' . milu_lang('return_list') . '</a>'; if ($article_view_url) { $article_view_output = ' <span class="pipe">|</span> <a target="_blank" href="' . $article_view_url . '">' . milu_lang('view_article') . '</a>'; } cpmsg(milu_lang('save_success', array('msg' => $msg)) . '<br><br><a href="?' . PICK_GO . 'picker_manage&myfunc=article_edit&aid=' . $aid . '&pid=' . $pid . '">' . milu_lang('continue_edit') . '</a> <span class="pipe">|</span> ' . $return_list_html . $article_view_output, PICK_GO . 'picker_manage&myfunc=article_edit&aid=' . $aid . '&pid=' . $pid, 'succeed'); } else { $pid = intval($_GET['pid']); $p_arr = get_pick_info($pid); $p_arr['public_class'] = unserialize($p_arr['public_class']); $aid = intval($_GET['aid']); $data = article_info($aid); $data['p_arr'] = $p_arr; $data['status'] = intval($_GET['status']); if (!$data['view_num']) { $view_arr = format_wrap($p_arr['view_num'], ','); if ($view_arr) { $data['view_num'] = rand($view_arr[0], $view_arr[1]); } } if ($data['contents'] > 1) { if ($data['content_arr']) { $data['content'] = content_merge($data['content_arr'], 1); } } $time_arr = create_public_time($data, 1); $data['public_time'] = array_pop($time_arr); $data['public_time'] = dgmdate($data['public_time'], 'Y-m-d H:i'); if (!$data['uid']) { $rand_arr = get_rand_uid($p_arr); $data['uid'] = $rand_arr[0]['uid']; } $data['raids'] = unserialize($data['raids']); if ($data['raids']) { $query = DB::query("SELECT title,aid FROM " . DB::table('portal_article_title') . " WHERE aid IN (" . dimplode($data['raids']) . ")"); $list = array(); while ($value = DB::fetch($query)) { $list[$value['aid']] = $value; $data['raids_html'] .= '<li id="raid_li_' . $value['aid'] . '"><input type="hidden" name="raids[]" value="' . $value['aid'] . '" size="5"><a href="portal.php?mod=view&aid=' . $value['aid'] . '" target="_blank">' . $value['title'] . '</a>(' . milu_lang('article') . ' ID: ' . $value['aid'] . ')<a href="javascript:;" onclick="raid_delete(' . $value['aid'] . ');" class="xg1">' . milu_lang('del') . '</a></li>'; } } if (!$data['forum_typeid']) { $data['forum_typeid'] = $p_arr['public_class'][1]; } $data['threadtypes'] = getthreadtypes(array('typeid' => $p_arr['public_class'][1], 'fid' => $p_arr['public_class'][0])); $data['forumselect'] = '<select id="forums" name="forums" onchange="getthreadtypes(this.value, 0)">' . forumselect(FALSE, 0, $p_arr['public_class'][0], TRUE) . '</select> <span id="threadtypes">' . $data['threadtypes'] . '</span>'; $data['portalselect'] = category_showselect('portal', 'portal', $p_arr['public_class'][0]); $data['blogselect'] = category_showselect('blog', 'blog', $p_arr['public_class'][0]); $data['article_tags'] = article_parse_tags($data['tag']); $data['tag_names'] = article_tagnames(); $data['show_blog_class'] = get_person_blog_class($data['uid'], $data['blog_small_cid']); $data['pid'] = $pid; $data['public_type'] = $p_arr['public_type']; $data['content'] = dhtmlspecialchars($data['content']); $data['url_args'] = $_GET['url_args']; return $data; } }
function create_article($arr) { global $_G; $this->status_arr = array_merge($this->msg_args, $this->status_arr); $this->status_arr['now'] = $this->temp_arr['normal_now']; //print_r($this->p_arr);exit(); if ($this->p_arr['is_auto_public'] == 1 && $this->p_arr['public_class'][0]) { //自动发布文章 $public_aid = $this->article_public($arr); if ($public_aid < 0) { show_pick_info(milu_lang('article_publiced'), 'err', $this->status_arr); $this->v_a++; $this->pick_cache_data['v_a'] = $this->v_a; return FALSE; } if ($this->p_arr['public_type'] == 1) { $setarr['portal_id'] = $public_aid; } else { if ($this->p_arr['public_type'] == 2) { $setarr['forum_id'] = $public_aid; } else { if ($this->p_arr['public_type'] == 3) { $setarr['blog_id'] = $public_aid; } } } $setarr['status'] = $this->temp_arr['article_status'] ? $this->temp_arr['article_status'] : 0; } if ($public_aid && $this->p_arr['is_public_del'] == 1) { //不入库,直接发布 $this->public_info['insert_aid'] = $public_aid; if ($public_aid) { show_pick_info(milu_lang('public_data'), 'success', $this->status_arr); } return; } //标题表 if ($this->p_arr['reply_rules'] || $this->p_arr['reply_is_extend']) { $setarr['is_bbs'] = 1; } $setarr['pid'] = $this->pid; $setarr['url'] = $this->now_url; $setarr['pic'] = $arr['pic']; $setarr['title'] = $arr['title']; $setarr['from'] = $arr['from']; $setarr['author'] = $arr['author']; $setarr['article_dateline'] = $arr['article_dateline']; $setarr['contents'] = 1; $setarr['summary'] = portalcp_get_summary($arr['content']); $setarr['summary'] = $setarr['summary']; $setarr['dateline'] = $_G['timestamp']; $setarr['url_hash'] = md5($setarr['url']); //var_dump($setarr);exit(); unset($arr['other']); $num = DB::result_first('SELECT COUNT(*) FROM ' . DB::table('strayer_article_title') . " WHERE pid='" . $setarr['pid'] . "' AND url_hash = '" . md5($arr['url']) . "'"); if ($num) { $this->v_a++; $this->pick_cache_data['v_a'] = $this->v_a; show_pick_info(milu_lang('article_exist'), 'err', $this->status_arr); return FALSE; } $setarr = paddslashes($setarr); $this->aid = DB::insert('strayer_article_title', $setarr, TRUE); $this->article_timing_update($this->aid, $this->temp_arr['timing_id']); //更新定时发布 $setarr = array(); //内容表 $setarr['aid'] = $this->aid; $setarr['content'] = $arr['content']; $setarr['pageorder'] = 1; $setarr['dateline'] = $_G['timestamp']; $setarr = paddslashes($setarr); $insert_id = DB::insert('strayer_article_content', $setarr, TRUE); if ($this->aid) { show_pick_info(milu_lang('add_data'), 'success', $this->status_arr); } }