article.php
来自「phpcms网站管理系统 很不错的 有需要的就下载看看八 」· PHP 代码 · 共 869 行 · 第 1/3 页
PHP
869 行
$article=$db->get_one("SELECT title,catid,username,status FROM ".TABLE_ARTICLE." WHERE articleid='$articleid' AND channelid='$channelid'");
if($article['title'])
{
$article[status] == 1 or showmessage('无法进行此操作!请返回!');
}
else
{
showmessage('文章不存在!请返回!');
}
$referer=urlencode('?mod='.$mod.'&file='.$file.'&action=check&channelid='.$channelid);
include admintpl('article_sendback');
}
break;
case 'send':
if(empty($articleid))
{
showmessage('非法参数!请返回!');
}
$r=$db->get_one("SELECT status FROM ".TABLE_ARTICLE." WHERE articleid='$articleid' AND channelid='$channelid'");
$status = $r['status'];
if($_grade==4 && $status==3) showmessage("您没有权限!");
$db->query("UPDATE ".TABLE_ARTICLE." SET status=1 WHERE articleid='$articleid' AND channelid='$channelid'");
showmessage('操作成功!',$referer);
break;
case 'move':
if($submit)
{
$specialid = intval($specialid);
$targetcatid = intval($targetcatid);
if(!$specialid && !$targetcatid) showmessage('非法参数!请返回!');
if($targetcatid && !$_CAT[$targetcatid]['enableadd']) showmessage('指定栏目不允许添加文章!请返回!');
if($movetype==1)
{
if(empty($articleid)) showmessage('非法参数!请返回!');
$articleids=is_array($articleid) ? implode(',',$articleid) : $articleid;
if($specialid) $db->query("UPDATE ".TABLE_ARTICLE." SET specialid='$specialid' WHERE articleid IN ($articleids) AND status=3 AND channelid='$channelid' ");
if($targetcatid) $db->query("UPDATE ".TABLE_ARTICLE." SET catid='$targetcatid' WHERE articleid IN ($articleids) AND status=3 AND channelid='$channelid' ");
}
else
{
if(empty($batchcatid)) showmessage('非法参数!请返回!');
$batchcatids=implode(",",$batchcatid);
if($specialid) $db->query("UPDATE ".TABLE_ARTICLE." SET specialid='$specialid' WHERE catid IN ($batchcatids) AND status=3 AND channelid='$channelid' ");
if($targetcatid) $db->query("UPDATE ".TABLE_ARTICLE." SET catid='$targetcatid' WHERE catid IN ($batchcatids) AND status=3 AND channelid='$channelid' ");
}
showmessage('操作成功!',$referer);
}
else
{
$referer=urlencode('?mod='.$mod.'&file='.$file.'&action=move&channelid='.$channelid);
$articleid=is_array($articleid) ? implode(',',$articleid) : $articleid;
$special_select = special_select($channelid,'specialid','请选择专题',$specialid);
include admintpl('article_move');
}
break;
case 'recycle':
$status=isset($status) ? $status : 3;
$referer=urlencode("?mod=".$mod."&file=".$file."&action=recycle&channelid=".$channelid."&catid=".$catid."&status=".$status."&page=".$page);
@extract($db->get_one("SELECT COUNT(*) AS num_3 FROM ".TABLE_ARTICLE." WHERE status=3 AND username='$_username' AND recycle=1 AND channelid='$channelid'","CACHE"));
@extract($db->get_one("SELECT COUNT(*) AS num_1 FROM ".TABLE_ARTICLE." WHERE status=1 AND username='$_username' AND recycle=1 AND channelid='$channelid'","CACHE"));
@extract($db->get_one("SELECT COUNT(*) AS num_0 FROM ".TABLE_ARTICLE." WHERE status=0 AND username='$_username' AND recycle=1 AND channelid='$channelid'","CACHE"));
@extract($db->get_one("SELECT COUNT(*) AS num_2 FROM ".TABLE_ARTICLE." WHERE status=2 AND username='$_username' AND recycle=1 AND channelid='$channelid'","CACHE"));
if(!$page)
{
$page=1;
$offset=0;
}
else
{
$offset=($page-1)*$pagesize;
}
if($catid)
{
$arrchildid = $_CAT[$catid][child] ? $catid.$_CAT[$catid][arrchildid] : $catid;
$addquery = " AND catid IN($arrchildid) ";
}
$r = $db->get_one("SELECT COUNT(*) as num FROM ".TABLE_ARTICLE." WHERE recycle=1 AND status='$status' $addquery");
$number=$r["num"];
$url="?mod=".$mod."&file=".$file."&action=recycle&channelid=".$channelid."&catid=".$catid."&status=".$status."&page=".$page;
$pages=phppages($number,$page,$pagesize,$url);
$result=$db->query("SELECT articleid,channelid,catid,title,includepic,titlefontcolor,titlefonttype,showcommentlink,hits,username,addtime,editor,edittime,checker,checktime,ontop,elite,stars,recycle,status FROM ".TABLE_ARTICLE." WHERE recycle=1 AND status='$status' $addquery ORDER BY articleid DESC ");
while($r=$db->fetch_array($result))
{
$p->set_catid($r[catid]);
$r[catdir] = $p->get_caturl();
$r[title] = titleformat($r[title],$r[titlefontcolor],$r[titlefonttype],$r[includepic]);
$r[adddate]=date("Y-m-d",$r[addtime]);
$articles[]=$r;
}
include admintpl('article_recycle');
break;
case 'preview':
if(!ereg('^[0-9]+$',$articleid)) showmessage('非法参数!请返回!');
@extract($db->get_one("SELECT * FROM ".TABLE_ARTICLE." WHERE articleid=$articleid"));
$url = $p->get_itemurl($articleid,$addtime);
$adddate=date('Y-m-d',$addtime);
include admintpl('article_preview');
break;
case 'specialout':
if(empty($articleid)) showmessage('非法参数!请返回!');
$articleids=is_array($articleid) ? implode(',',$articleid) : $articleid;
$db->query("UPDATE ".TABLE_ARTICLE." SET specialid=0 WHERE articleid IN ($articleids) AND channelid='$channelid'");
if($db->affected_rows()>0)
{
showmessage('操作成功!',$referer);
}
else
{
showmessage('操作失败!请返回!');
}
break;
case 'elite':
if(empty($articleid)) showmessage('非法参数!请返回!');
if(!ereg('^[0-1]+$',$value)) showmessage('非法参数!请返回!');
$articleids = is_array($articleid) ? implode(',',$articleid) : $articleid;
$result = $db->query("SELECT catid,elite,username FROM ".TABLE_ARTICLE." WHERE articleid IN ($articleids)");
while($r = $db->fetch_array($result))
{
$credit = $r['elite'] < $value ? $_CAT[$r['catid']]['creditget'] : ($r['elite'] > $value ? -$_CAT[$r['catid']]['creditget'] : 0);
if($credit!=0) credit_add($r['username'],$credit);
}
$db->query("UPDATE ".TABLE_ARTICLE." SET elite='$value' WHERE articleid IN ($articleids) AND channelid='$channelid'");
if($db->affected_rows()>0)
{
showmessage('操作成功!',$referer);
}
else
{
showmessage('操作失败!请返回!');
}
break;
case 'ontop':
if(empty($articleid)) showmessage('非法参数!请返回!');
if(!ereg('^[0-1]+$',$value)) showmessage('非法参数!请返回!');
$articleids=is_array($articleid) ? implode(',',$articleid) : $articleid;
$db->query("UPDATE ".TABLE_ARTICLE." SET ontop='$value' WHERE articleid IN ($articleids) AND channelid='$channelid'");
if($db->affected_rows()>0)
{
showmessage('操作成功!',$referer);
}
else
{
showmessage('操作失败!请返回!');
}
break;
case 'torecycle':
if(empty($articleid)) showmessage('非法参数!请返回!');
if(!ereg('^[0-1]+$',$value)) showmessage('非法参数!请返回!');
if($_grade==4) $condition = " AND username='$_username' AND status<3";
if($_grade==5) $condition = " AND status<3";
$articleids=is_array($articleid) ? implode(',',$articleid) : $articleid;
$result = $db->query("SELECT catid,recycle,username FROM ".TABLE_ARTICLE." WHERE articleid IN ($articleids) AND channelid='$channelid'");
while($r = $db->fetch_array($result))
{
$credit = $r['recycle'] < $value ? -$_CAT[$r['catid']]['creditget'] : ($r['recycle'] > $value ? $_CAT[$r['catid']]['creditget'] : 0);
if($credit!=0) credit_add($r['username'],$credit);
}
$db->query("UPDATE ".TABLE_ARTICLE." SET recycle='$value' WHERE articleid IN ($articleids) AND channelid='$channelid' $condition");
if($db->affected_rows()>0)
{
showmessage('操作成功!',$referer);
}
else
{
showmessage('操作失败!请返回!');
}
break;
case 'pass':
if(empty($articleid)) showmessage('非法参数!请返回!');
$articleids=is_array($articleid) ? implode(',',$articleid) : $articleid;
$result = $db->query("SELECT catid,status,username FROM ".TABLE_ARTICLE." WHERE articleid IN ($articleids) AND channelid='$channelid'");
while($r = $db->fetch_array($result))
{
if($r['status']<3) credit_add($r['username'],$_CAT[$r['catid']]['creditget']);
}
$db->query("UPDATE ".TABLE_ARTICLE." SET checker='$_username',checktime='$timestamp',status=3 WHERE articleid IN ($articleids) AND channelid='$channelid'");
tohtml("article");
if($db->affected_rows()>0)
{
showmessage('操作成功!',$referer);
}
else
{
showmessage('操作失败!请返回!');
}
break;
case 'delete':
if(empty($articleid)) showmessage('非法参数!请返回!');
$articleids=is_array($articleid) ? implode(',',$articleid) : $articleid;
if($_CHA['htmlcreatetype'])
{
$query="SELECT articleid,addtime FROM ".TABLE_ARTICLE." WHERE articleid IN ($articleids) AND channelid='$channelid'";
$result=$db->query($query);
while($r=$db->fetch_array($result))
{
$p->set_type("path");
$filename=$p->get_itemurl($r[articleid],$r[addtime]);
$f->unlink($filename);
}
}
$db->query("DELETE FROM ".TABLE_ARTICLE." WHERE articleid IN ($articleids) AND channelid='$channelid'");
if($db->affected_rows()>0)
{
showmessage('操作成功!',$referer);
}
else
{
showmessage('操作失败!请返回!');
}
break;
case 'restoreall'://还原所有
$result = $db->query("SELECT catid,status,username FROM ".TABLE_ARTICLE." WHERE recycle=1 AND channelid='$channelid'");
while($r = $db->fetch_array($result))
{
if($r['status']==3) credit_add($r['username'],$_CAT[$r['catid']]['creditget']);
}
$db->query("UPDATE ".TABLE_ARTICLE." SET recycle=0 WHERE recycle=1 AND channelid='$channelid'");
if($db->affected_rows()>0)
{
showmessage('操作成功!',$referer);
}
else
{
showmessage('操作失败!请返回!');
}
break;
case 'deleteall':
if($_CHA['htmlcreatetype'])
{
$result=$db->query("SELECT articleid,addtime FROM ".TABLE_ARTICLE." WHERE recycle=1 AND channelid='$channelid'");
while($r=$db->fetch_array($result))
{
$p->set_type("path");
$filename=$p->get_itemurl($r[articleid],$r[addtime]);
$f->unlink($filename);
}
}
$db->query("DELETE FROM ".TABLE_ARTICLE." WHERE recycle=1 AND channelid='$channelid'");
if($db->affected_rows()>0)
{
showmessage('操作成功!',$referer);
}
else
{
showmessage('操作失败!请返回!');
}
break;
}
?>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?