📄 savelog.php
字号:
<?php
/**
* Title: save log datas
* File Name: ./mods/savelog.php
* Copyright (c) 2004 M-logger
* Author: milkliker
* Modify: milkliker
* Last Change: 21:13 04-8-28
* Version: 0.3.1
**/
//---[Page Start]-------------------------------------------
$logData=array();
$tpl->set_file('tplModule','outmsg.htm');
$tpl->set_var('MASTERMAIL',$config['MasterMail']);
$pageTitle=$lang['Defeat'];
if(!$user->logined or $user->user['rank']>$config['AddLog']){
$tpl->set_var('MSGTITLE',$lang['Warning']);
$tpl->set_var('MSGCONTENT',$lang['NoRightToModifyLog']);
}else{
//---[Check Data]-------------------------------------------
$logData['content']=str_replace(array('\\"',"\\'",'\n','\r',"\n","\r",'\\\\'),array('"',"'",'\[n]','\[r]','','','\\'),$_POST['Body']);
$logData['content']=trim(str_replace(array('\[n]','\[r]'),array('\n','\r'),$logData['content']));
$logData['title']=trim(str_replace(array("\'",'\"',"<",">","\n","\r",'\\\\'),array("'",'"',"<",">",'','','\\'),$_POST['title']));
if($config['Html']=='y'){
$logData['describe']=str_replace(array('\n','\r',"\n","\r","\\'",'\\"','\\\\'),array('\[n]','\[r]','','',"'",'"','\\'),$_POST['description']);
$logData['describe']=str_replace(array('//[n]','//[r]'),array('\n','\r'),$logData['describe']);
}else{
$logData['describe']=str_replace(array('\n','\r',"<",">","\n","\r"," ",'\\"',"\\'",'\\\\'),array('\[n]','\[r]',"<",">",'<br/>','',' ','"',"'",'\\'),$_POST['description']);
$logData['describe']=str_replace(array('\[n]','\[r]'),array('\n','\r'),$logData['describe']);
}
if(substr($logData['describe'],0,3)=='<P>'){//首字下沉
$logData[describe]='<P id="fp">'.substr($logData['describe'],3);
}
$logData['view']=trim($_POST['view']);
$logData['cate']=trim($_POST['cate']);
$logData['author']=$user->user['name'];
$logData['type']='log';
$logData['comment']='0';
$logData['count']='0';
$logData['trackback']='0';
$logData['time']=$thisTime;
$date=trim($_POST['date']);
$id=trim($_POST['id']);
if(empty($logData['title'])){
$titleClass='class="warning"';
$msgTitle=$lang['Sorry'];
$msgContent=$lang['NeedTitle'];
}elseif(ereg("^.+(<SCRIPT).+\\..+$",$logData['content'])){// NO SCRIPT!
$contentClass='class="warning"';
$msgTitle=$lang['Sorry'];
$msgContent=$lang['NoJsCode'];
}elseif(empty($logData['describe'])){
$describClass='class="warning"';
$msgTitle=$lang['Sorry'];
$msgContent=$lang['NeedDescription'];
}elseif(empty($logData['view'])){
$msgTitle=$lang['Sorry'];
$msgContent=$lang['NeedRank'];
}elseif(empty($logData['cate'])){
$msgTitle=$lang['Sorry'];
$msgContent=$lang['NeedCate'];
}elseif(empty($date)){
$msgTitle=$lang['Sorry'];
$msgContent=$lang['InvalidSubmit'];
//---[Add Log]----------------------------------------------
}elseif($date=='today'){
$time=explode(',',date("Y,n,j",$thisTime));
$tblName='content/'.$time[0].'_'.$time[1].'_'.$time[2];
$listName='list/year_'.$time[0];
$tblExist=1;
if(!$user->exists($tblName)){
$tblExist=0;
$user->create($tblName,'id,title,describe,author,content,time,view,type,cate,comment,trackback,count');
}
$user->append($logData,0,$tblName);
if($user->save()){
@unlink(CACHEDIR.'/calendar[y-'.$time[0].'-m-'.$time[1].'].cache.php');
$addyear="";
if(!$tblExist){
if(!$user->exists($listName)){
$user->create($listName,'month,dates');
$addyear=','.$time[0];
}
$data=$user->get("'{month}'=='{$time[1]}'",false,null,$listName,$config['UseCache']);
if(!$data){
$data=array('month'=>$time[1],'dates'=>$time[2]);
$user->append($data,null,$listName);
$user->save();
}else{
$newData=array();
$newData['month']=$data['value']['month'];
$newData['dates']= $data['value']['dates']=='' ? $time[2] : $data['value']['dates'].','.$time[2];
$user->change($newData,intval($data['id']),false,null,$listName);
$user->save();
}
}
$num=$user->get('0',0,null,'num',$config['UseCache']);
$num[0]['log']++;
$num[0]['year'].=$addyear;
$user->change($num[0],0,0,'0,1','num');
$user->save();
$cate=$user->get("'{id}'=='{$logData['cate']}'",false,null,'cate',$config['UseCache']);
$cate['value']['num']++;
$user->change($cate['value'],"'{id}'=='{$logData['cate']}'",false,null,'cate');
$user->save();
$pageTitle=$lang['Success'];
$msgTitle=$lang['Success'];
$msgContent=$lang['AddLogSuc'];
}else{
$msgTitle=$lang['Defeat'];
$msgContent=$lang['CheckDBWriteable'];
}
//---[Modify Log]-------------------------------------------
}elseif(!empty($id) and $user->exists('content/'.$date)){
$data=$user->get("'{id}'=='$id'",false,null,'content/'.$date);//[1]NO CACHE...
if($data){
if(!empty($logData['content'])) $logData['content'].='<p align="right">Change by [<b>'.$logData['author'].'</b>] at '.date($config['DateFormat'],$logData['time']).'</p>';
$logData['comment']=$data['value']['comment'];
$logData['trackback']=$data['value']['trackback'];
$logData['author']=$data['value']['author'];
$logData['time']=$data['value']['time'];
$logData['type']=$data['value']['type'];
$logData['count']=$data['value']['count'];
$user->change($logData,intval($data['id']),false,null,'content/'.$date);
if($user->save()){
if($logData['cate']!=$data['value']['cate']){
$cate=$user->get("'{id}'=='{$logData['cate']}'",false,null,'cate',$config['UseCache']);
$cate['value']['num']++;
$user->change($cate['value'],"'{id}'=='{$logData['cate']}'",false,null,'cate');
$cate=$user->get("'{id}'=='{$data['value']['cate']}'",false,null,'cate',$config['UseCache']);
$cate['value']['num']--;
$user->change($cate['value'],"'{id}'=='{$data['value']['cate']}'",false,null,'cate');
$user->save();
}
$pageTitle=$lang['Success'];
$msgTitle=$lang['Success'];
$msgContent=$lang['ModifyLogSuc'];
}else{
$msgTitle=$lang['Defeat'];
$msgContent=$lang['CheckDBWriteable'];
}
}else{
$msgTitle=$lang['Defeat'];
$msgContent=$lang['NoSuchLog'];
}
}else{
$msgTitle=$lang['Defeat'];
$msgContent=$lang['InvalidSubmit'];
}
}
$msgContent.='<br>'.$lang['YourSubmitData'].'<br><br><table class="bordertbl" width="70%">';
$msgContent.='<tr><td>'.$lang['Author'].'</td><td>'.$logData['author'].'</td></tr>';
$msgContent.='<tr><td>'.$lang['Time'].'</td><td>'.date($config['DateFormat'],$logData['time']).'</td></tr>';
$msgContent.='<tr><td '.$titleClass.'>'.$lang['Title'].'</font></td><td>'.str_replace('"','\"',$logData['title']).'</td></tr>';
$msgContent.='<tr><td '.$describClass.'>'.$lang['Description'].'</font></td><td>';
if(!empty($logData['describe'])) $msgContent.='<textarea class="formfield" cols="40" rows="4">'.$logData['describe'].'</textarea>';
$msgContent.='</td></tr><tr><td '.$contentClass.'>'.$lang['Content'].'</font></td><td>';
if(!empty($logData['content'])) $msgContent.='<textarea class="formfield" cols="40" rows="7">'.$logData['content'].'</textarea>';
$msgContent.='</td></tr></table>';
$tpl->set_var('MSGTITLE',$msgTitle);
$tpl->set_var('MSGCONTENT',$msgContent);
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -