📄 pcmanage.php
字号:
<?php /* **manage personal corp. **@id: windinsn Nov 19,2003 */ /* ** 对收藏夹的剪切、复制操作需要 session 支持 windinsn nov 25,2003 */ require("pcfuncs.php"); function pc_save_posts($subject,$body,$htmltag) {?><center><table cellspacing="0" cellpadding="5" border="0" class="t1" width="90%"><tr><td class="t2">请重新登录后再发表</td></tr><tr><td class="t3">主题</td></tr><tr><td class="t5"><?php echo html_format($subject); ?></td></tr><tr><td class="t3">内容</td></tr><tr><td class="t5"><?php echo html_format($body,1,$htmltag); ?></td></tr></table></center> <?php } if ($loginok != 1) { pc_html_init("gb2312","拯救文档"); if ($_GET['act'] == 'post' && ($_POST['subject'] || $_POST['blogbody'])) pc_save_posts($_POST['subject'],$_POST['blogbody'],$_POST['htmltag']); html_error_quit("请先登录!"); } elseif(!strcmp($currentuser["userid"],"guest")) { pc_html_init("gb2312","拯救文档"); if ($_GET['act'] == 'post' && ($_POST['subject'] || $_POST['blogbody'])) pc_save_posts($_POST['subject'],$_POST['blogbody'],$_POST['htmltag']); html_error_quit("请先登录!"); } else { $link = pc_db_connect(); $pc = pc_load_infor($link,$_GET["userid"]); if(!$pc) { pc_db_close($link); html_error_quit("对不起,您要查看的Blog不存在"); } if(!pc_is_admin($currentuser,$pc)) { pc_db_close($link); html_error_quit("对不起,您要查看的Blog不存在"); } if($pc["EDITOR"] != 1 && $pc["EDITOR"] != 3) $pcconfig["EDITORALERT"] = NULL; $act = $_GET["act"]?$_GET["act"]:$_POST["act"]; $subject = isset($_POST["subject"])?$_POST["subject"]:""; if($act == "post" && !$subject && $pc["EDITOR"] != 0) pc_html_init("gb2312",stripslashes($pc["NAME"]),"","","",$pc["EDITOR"]); elseif($act == "edit" && !$subject && $pc["EDITOR"] != 0) pc_html_init("gb2312",stripslashes($pc["NAME"]),"","","",$pc["EDITOR"]); elseif($act != "favcut" && $act != "favcopy" && $act != "favpaste") pc_html_init("gb2312",stripslashes($pc["NAME"])); else ;//nth :p if($act == "cut" || $act == "copy") { $access = intval($_POST["access"]); if(stristr($_POST["target"],'T')) { $target = intval(substr($_POST["target"],1,strlen($_POST["target"])-1)); $in_section = 1; if(!pc_load_topic($link,$pc["UID"],$target,$topicname)) $target = 0; //如果参数错误就移入未分类 } else { $target = intval($_POST["target"]); $in_section = 0; if($target < 0 || $target > 4 ) $target = 2;//如果参数错误先移入私人区 } if(!$in_section && 3 == $target ) //跨区 移入收藏区 { $rootpid = pc_fav_rootpid($link,$pc["UID"]); if(!$rootpid) { html_error_quit("收藏夹根目录错误!"); exit(); } } else $rootpid = 0; if($in_section) { if($act == "cut") $query = "UPDATE nodes SET created = created , `tid` = '".$target."' , `changed` = NOW( ) , `pid` = '0' WHERE `uid` = '".$pc["UID"]."' AND `type` = 0 AND ( `nid` = '0' "; else $query = "SELECT * FROM nodes WHERE `uid` = '".$pc["UID"]."' AND `type` = 0 AND ( `nid` = '0' "; } else { if($act == "cut" && $target == 3) $query = "UPDATE nodes SET created = created , `access` = '".$target."' , `changed` = '".date("YmdHis")."' , `pid` = '".$rootpid."', `tid` = 0 WHERE `uid` = '".$pc["UID"]."' AND ( `nid` = '0' "; elseif($act == "cut") $query = "UPDATE nodes SET created = created , `access` = '".$target."' , `changed` = '".date("YmdHis")."' , `pid` = '0' , `tid` = 0 WHERE `uid` = '".$pc["UID"]."' AND `type` = 0 AND ( `nid` = '0' "; else $query = "SELECT * FROM nodes WHERE `uid` = '".$pc["UID"]."' AND `type` = 0 AND ( `nid` = '0' "; } $j = 0; for($i = 1 ;$i < $pc["NLIM"]+1 ; $i ++) { if($_POST["art".$i]) { $query .= " OR `nid` = '".(int)($_POST["art".$i])."' "; $j ++; } } $query .= " ) "; if($in_section) { if("cut" == $act) { mysql_query($query,$link); } else { $result = mysql_query($query,$link); $num_rows = mysql_num_rows($result); $j = $num_rows; if(pc_used_space($link,$pc["UID"],$access)+$num_rows > $pc["NLIM"]) { html_error_quit("目标区域文章数超过上限 (".$pc["NLIM"]." 篇)!"); exit(); } for($i = 0;$i < $num_rows ; $i ++) { /* 目前复制文章的时候评论不同步复制 */ $rows = mysql_fetch_array($result); $query = "INSERT INTO `nodes` ( `pid` , `tid` , `type` , `source` , `hostname` , `changed` , `created` , `uid` , `comment` , `commentcount` , `subject` , `body` , `access` , `visitcount` ,`htmltag`) ". " VALUES ('0','".$target."' , '0', '".addslashes($rows["source"])."', '".addslashes($rows["hostname"])."','NOW( )' , '".$rows["created"]."', '".$pc["UID"]."', '".$rows["comment"]."', '0', '".addslashes($rows["subject"])."', '".addslashes($rows["body"])."', '".$access."', '0','".$rows["htmltag"]."');"; mysql_query($query,$link); } if($access == 0) pc_update_record($link,$pc["UID"]," + ".$j); } } else { if($act == "cut") { if(pc_used_space($link,$pc["UID"],$target)+$j > $pc["NLIM"]) { html_error_quit("目标区域文章数超过上限 (".$pc["NLIM"]." 篇)!"); exit(); } else { mysql_query($query,$link); } } else { $result = mysql_query($query,$link); $num_rows = mysql_num_rows($result); $j = $num_rows; if(pc_used_space($link,$pc["UID"],$target)+$num_rows > $pc["NLIM"]) { html_error_quit("目标区域文章数超过上限 (".$pc["NLIM"]." 篇)!"); exit(); } for($i = 0;$i < $num_rows ; $i ++) { /* 目前复制文章的时候评论不同步复制 */ $rows = mysql_fetch_array($result); $query = "INSERT INTO `nodes` ( `pid` , `tid` , `type` , `source` , `hostname` , `changed` , `created` , `uid` , `comment` , `commentcount` , `subject` , `body` , `access` , `visitcount` ,`htmltag`) ". " VALUES ('".$rootpid."','0' , '0', '".addslashes($rows["source"])."', '".addslashes($rows["hostname"])."',NOW( ) , '".$rows["created"]."', '".$pc["UID"]."', '".$rows["comment"]."', '0', '".addslashes($rows["subject"])."', '".addslashes($rows["body"])."', '".$target."', '0','".$rows["htmltag"]."');"; mysql_query($query,$link); } } if($access == 0 && $act == "cut") pc_update_record($link,$pc["UID"]," - ".$j); if($target == 0) pc_update_record($link,$pc["UID"]," + ".$j); } $log_action = "CUT/COPY NODE"; pc_return("pcdoc.php?userid=".$pc["USER"]."&tag=".$access."&tid=".intval($_GET["tid"])); } elseif($act == "post") { if($subject) { if($pc["EDITOR"]==2)//use ubb $blogbody = pc_ubb_parse($_POST["blogbody"]); else $blogbody = $_POST["blogbody"]; if ($pcconfig["ENCODINGTBP"]) $convert_encoding = @$_POST['tbpencoding']; else $convert_encoding = ''; $ret = @pc_add_node($link,$pc,$_GET["pid"],$_POST["tid"],$_POST["emote"],$_POST["comment"],$_GET["tag"],$_POST["htmltag"],$_POST["trackback"],$_POST["theme"],$_POST["subject"],$blogbody,0,$_POST["autodetecttbps"],$_POST["trackbackurl"],$_POST["trackbackname"],$convert_encoding,0,0,$currentuser["userid"]); $error_alert = ""; switch($ret) { case -1: html_error_quit("缺少日志主题"); exit(); break; case -2: html_error_quit("目录不存在"); exit(); break; case -3: html_error_quit("该目录的日志数已达上限"); exit(); break; case -4: html_error_quit("分类不存在"); exit(); break; case -5: html_error_quit("由于系统原因日志添加失败,请联系管理员"); exit(); break; case -6: $error_alert = "由于系统错误,引用通告发送失败!"; break; case -7: $error_alert = "TrackBack Ping URL 错误,引用通告发送失败!"; break; case -8: $error_alert = "对方服务器无响应,引用通告发送失败!"; break; case -9: $error_alert = "您的文章可能含有不当词汇,请等待管理员审核。"; break; case -10: // 群体blog的发布者未能传递... html_error_quit("由于系统原因日志添加失败,请联系管理员"); exit(); break; default: } if($error_alert) echo "<script language=\"javascript\">alert('".$error_alert."');</script>"; $log_action = "ADD NODE: ".$_POST["subject"]; pc_return("pcdoc.php?userid=".$pc["USER"]."&tag=".intval($_GET["tag"])."&tid=".intval($_POST["tid"])."&pid=".intval($_GET["pid"])); } else { @$tid = intval($_GET["tid"]); @$pid = intval($_GET["pid"]); $tag = intval($_GET["tag"]); if($tag < 0 || $tag > 4) $tag =2 ; if($tid) { if(!pc_load_topic($link,$pc["UID"],$tid,$topicname,$tag)) { html_error_quit("所指定的分类不存在,请重试!"); exit(); } } if($pid) { if(!pc_load_directory($link,$pc["UID"],$pid)) { html_error_quit("所指定的分类不存在,请重试!"); exit(); } } ?><br><center><form name="postform" id="postform" target="_self" action="pcmanage.php?userid=<?php echo $pc["USER"]; ?>&act=post&<?php echo "tag=".$tag."&pid=".$pid; ?>" method="post" onsubmit="return submitwithcopy();"><input type="hidden" name="tmpsave" id="tmpsave" value="0"><table cellspacing="0" cellpadding="5" border="0" width="90%" class="t1"><tr> <td class="t2">发表文章</td></tr><tr> <td class="t8">主题 <input type="text" size="100" maxlength="200" name="subject" class="f1" value="<?php echo $subject; ?>"> </td></tr><tr> <td class="t5"> 评论 <input type="radio" name="comment" value="1" checked class="f1">允许 <input type="radio" name="comment" value="0" class="f1">不允许 </td></tr><tr> <td class="t8"> Blog <select name="tid" class="f1"><?php $blogs = pc_blog_menu($link,$pc,$tag); for($i = 0 ; $i < count($blogs) ; $i ++) { if($blogs[$i]["TID"] == $tid ) echo "<option value=\"".$blogs[$i]["TID"]."\" selected>".html_format($blogs[$i]["NAME"])."</option>"; else echo "<option value=\"".$blogs[$i]["TID"]."\">".html_format($blogs[$i]["NAME"])."</option>"; }?> </select> 主题 <select name="theme" class="f1"><?php while (list ($key,$val) = each ($pcconfig["SECTION"])) { if ($key == $pc["THEM"][0]) echo "<option value=\"".$key."\" selected>".html_format($val)."</option>"; else echo "<option value=\"".$key."\">".html_format($val)."</option>"; }?> </select> </td></tr><tr> <td class="t13">心情符号</td></tr><tr> <td class="t5"><?php @require("emote.html"); ?></td></tr><tr> <td class="t11">内容 <input type="checkbox" name="htmltag" value=1 <?php if($pc["EDITOR"] != 0) echo "checked"; ?>>使用HTML标记 </td></tr><tr> <td class="t8"><?php if($pc["EDITOR"]!=2)// not use ubb { $blogbody = isset($_POST["blogbody"])?$_POST["blogbody"]:"";?> <textarea name="blogbody" class="f1" style="width:100%" rows="30" id="blogbody" wrap="physical"><?php echo $pcconfig["EDITORALERT"].$blogbody; ?></textarea><?php } else pc_ubb_content();?> </td></tr><?php if($tag == 0) {?><tr> <td class="t8"> 引用通告 <?php if ($pcconfig["ENCODINGTBP"]) { //支持选择不同的发送编码 echo '使用<select name="tbpencoding" class="f1">'; $encodings = explode(',',$support_encodings); for ($i = 0 ; $i < sizeof($encodings) ; $i ++) { if ($encodings[$i] == $sending_encoding) echo '<option value="'.$encodings[$i].'" selected>'.htmlspecialchars($encodings[$i]).'</option>'; else echo '<option value="'.$encodings[$i].'">'.htmlspecialchars($encodings[$i]).'</option>'; } echo '</select>编码发送引用通告'; }?> </td></tr><tr> <td class="t8"> <input type="checkbox" name="autodetecttbps" value="1">自动发掘引用通告 (什么是自动发掘引用通告?)<br /> 文章链接: <input type="text" size="80" maxlength="255" name="trackbackname" class="f1" value="<?php echo htmlspecialchars(@$_GET["tbArtAddr"]); ?>"><br /> Trackback Ping URL: <input type="text" size="80" maxlength="255" name="trackbackurl" value="<?php echo htmlspecialchars(@$_GET["tbTBP"]); ?>" class="f1"> (必须以"http://"开头) </td></tr><tr> <td class="t5"> <input type="checkbox" name="trackback" value="1">允许引用 (请注意,这个选项是用来允许别的网站在不经您同意的情况下在您的 blog 增加引用链接的,很可能带来大量垃圾信息。) </td></tr><?php }?><tr> <td class="t2"> <input type="button" name="ins" value="插入HTML" class="b1" onclick="return insertHTML();" /> <input type="button" name="hil" value="高亮" class="b1" onclick="return highlight();" /> <input type="submit" name="postbutton" id="postbutton" value="发表本文" class="b1"> <input type="button" value="返回上页" onclick="doCancel();" class="b1"> </td></tr></table></form></center><?php } } elseif($act == "edit") { $nid = (int)($_GET["nid"]); $query = "SELECT `theme`,`nodetype` , `subject` , `body` ,`comment`,`type`,`tid`,`access`,`htmltag`,`trackback`,`pid` FROM nodes WHERE `nid` = '".$nid."' AND `uid` = '".$pc["UID"]."' LIMIT 0 , 1 ;"; $result = mysql_query($query,$link); $rows = mysql_fetch_array($result); mysql_free_result($result); if(!$rows) {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -