⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 postings.cgi

📁 绿叶网络小学校园网-完全适合小学的网站
💻 CGI
📖 第 1 页 / 共 4 页
字号:
    unless ($cleartoedit eq "yes") { $cleartoedit = "no"; }
    
    if ($cleartoedit eq "no" && $checked eq "yes") { &error("主题锁定&您不是本论坛坛主或版主,或者您的密码错误!"); }
        
        if (($cleartoedit eq "yes") && ($checked eq "yes")) {
            
        my $file = "$ikondir" . "forum$inforum/$intopic.pl";
        open (ENT, $file);
        $in = <ENT>;
        close (ENT);

        ($topicid, $topictitle, $topicdescription, $threadstate, $threadposts ,$threadviews, $startedby, $startedpostdate, $lastposter, $lastpostdate) = split(/\|/,$in);
        
        open(FILE, ">$file");
        flock(FILE, 2) if ($OS_USED eq "Unix");
        print FILE "$intopic|$topictitle|$topicdescription|closed|$threadposts|$threadviews|$startedby|$startedpostdate|$inmembername|$currenttime|";
        close(FILE);

        rebuildLIST(-Forum=>"$inforum");
        
            $output .= qq~
            <table cellpadding=0 cellspacing=0 border=0 width=$tablewidth bgcolor=$tablebordercolor align=center>
            <tr>    
            <td>
            <table cellpadding=6 cellspacing=1 border=0 width=100%>
            <tr>
            <td bgcolor=$miscbacktwo valign=middle align=center><font face="$font" color=$fontcolormisc><b>主题锁定成功</b></font></td></tr>
            <tr>
            <td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>
            具体情况:
            <ul>
            <li><a href="$forumsprog?forum=$inforum">返回论坛</a>
            <li><a href="$forumsummaryprog">返回论坛首页</a>
            </ul>
            </tr>
            </td>
            </table></td></tr></table>
            ~;
            
            } # end if clear to edit
            
            else {
            
            $inmembername =~ s/\_/ /g;
            $output .= qq~
            <table cellpadding=0 cellspacing=0 border=0 width=$tablewidth bgcolor=$tablebordercolor align=center>
            <tr><td>
            <table cellpadding=6 cellspacing=1 border=0 width=100%>
            <tr>
            <td bgcolor=$miscbacktwo valign=middle colspan=2 align=center>
            <form action="$thisprog" method="post">
            <input type=hidden name="action" value="lock">
            <input type=hidden name="checked" value="yes">
            <input type=hidden name="forum" value="$inforum">
            <input type=hidden name="topic" value="$intopic">
            <font face="$font" color=$fontcolormisc><b>请输入您的用户名、密码进入版主模式 [主题锁定]</b></font></td></tr>
            <tr>
            <td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>请输入您的用户名</font></td>
            <td bgcolor=$miscbackone valign=middle><input type=text name="membername" value="$inmembername"0></td></tr>
            <tr>
            <td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>请输入您的密码</font></td>
            <td bgcolor=$miscbackone valign=middle><input type=password name="password" value="$inpassword"0> &nbsp; <font face="$font" color=$fontcolormisc><a href="$profileprog?action=lostpass">忘记密码?</a></font></td></tr>
            <tr>
            <td bgcolor=$miscbacktwo valign=middle colspan=2 align=center><input type=submit name="submit" value="登 陆"></td></form></tr></table></td></tr></table>
            </table></td></tr></table>
            ~;
            
             }

} # end lockthread



###########################



sub unlockthread {

    &getmember("$inmembername");
    &moderator;

    $cleartoedit = "no";
    
    
    &mischeader("主题解锁");

    if (($membercode eq "ad") && ($inpassword eq $password)) { $cleartoedit = "yes"; }
    if (($inmembmod eq "yes") && ($inpassword eq $password)) { $cleartoedit = "yes"; }
    unless ($cleartoedit eq "yes") { $cleartoedit = "no"; }
    
        if ($cleartoedit eq "no" && $checked eq "yes") { &error("主题解锁&您不是本论坛坛主或版主,或者您的密码错误!"); } 
        if (($cleartoedit eq "yes") && ($checked eq "yes")) {
            
        my $file = "$ikondir" . "forum$inforum/$intopic.pl";
        open (ENT, $file);
        $in = <ENT>;
        close (ENT);

        ($topicid, $topictitle, $topicdescription, $threadstate, $threadposts ,$threadviews, $startedby, $startedpostdate, $lastposter, $lastpostdate) = split(/\|/,$in);
        
        open(FILE, ">$file");
        flock(FILE, 2) if ($OS_USED eq "Unix");
        print FILE "$intopic|$topictitle|$topicdescription|open|$threadposts|$threadviews|$startedby|$startedpostdate|$inmembername|$currenttime|";
        close(FILE);

        rebuildLIST(-Forum=>"$inforum");
        
            $output .= qq~
            <table cellpadding=0 cellspacing=0 border=0 width=$tablewidth bgcolor=$tablebordercolor align=center>
            <tr>    
            <td>
            <table cellpadding=6 cellspacing=1 border=0 width=100%>
            <tr>
            <td bgcolor=$miscbacktwo valign=middle align=center><font face="$font" color=$fontcolormisc><b>主题解锁成功</b></font></td></tr>
            <tr>
            <td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>
            详细资料:
            <ul>
            <li><a href="$forumsprog?forum=$inforum">返回论坛</a>
            <li><a href="$forumsummaryprog">返回论坛首页</a>
            </ul>
            </tr>
            </td>
            </table></td></tr></table>
            ~;
            } # end if clear to edit
            
            else {
            
            $inmembername =~ s/\_/ /g;
            $output .= qq~
            <table cellpadding=0 cellspacing=0 border=0 width=$tablewidth bgcolor=$tablebordercolor align=center>
            <tr><td>
            <table cellpadding=6 cellspacing=1 border=0 width=100%>
            <tr>
            <td bgcolor=$miscbacktwo valign=middle colspan=2 align=center>
            <form action="$thisprog" method="post">
            <input type=hidden name="action" value="unlock">
            <input type=hidden name="checked" value="yes">
            <input type=hidden name="forum" value="$inforum">
            <input type=hidden name="topic" value="$intopic">
            <font face="$font" color=$fontcolormisc><b>请输入您的用户名、密码进入版主模式 [主题解锁]</b></font></td></tr>
            <tr>
            <td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>请输入您的用户名</font></td>
            <td bgcolor=$miscbackone valign=middle><input type=text name="membername" value="$inmembername"0></td></tr>
            <tr>
            <td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>请输入您的密码</font></td>
            <td bgcolor=$miscbackone valign=middle><input type=password name="password" value="$inpassword"0> &nbsp; <font face="$font" color=$fontcolormisc><a href="$profileprog?action=lostpass">忘记密码?</a></font></td></tr>
            <tr>
            <td bgcolor=$miscbacktwo valign=middle colspan=2 align=center><input type=submit name="submit" value="登 陆"></td></form></tr></table></td></tr></table>
            </table></td></tr></table>
            ~;
            
             }

} # end unlockthread



###########################



sub deletepost {

    $filetoopen = "$ikondir" . "forum$inforum/$intopic.thd";
    if (-e $filetoopen) {
       open(FILE, "$filetoopen") or &error("删除&这个主题不存在!");
       @allthreads = <FILE>;
       close(FILE);
    }
    else { unlink ("$ikondir" . "forum$inforum/$intopic.pl"); &error("删除&这个主题不存在!可能已经被删除!"); }
    
    
    $posttodelete = $inpostno;
    $posttodelete--;
    $postcountcheck = 0;
    $totalposts = @allthreads;
    

    &getmember("$inmembername");
    &moderator;

    $cleartoedit = "no";

    if (($membercode eq "ad") && ($inpassword eq $password)) { $cleartoedit = "yes"; }
    if (($inmembmod eq "yes") && ($inpassword eq $password)) { $cleartoedit = "yes"; }
    unless ($cleartoedit eq "yes") { $cleartoedit = "no"; }
    
        if ($cleartoedit eq "no" && $checked eq "yes") { &error("删除回复&您不是本论坛坛主或版主,或者您的密码错误!"); }
        if ($cleartoedit eq "yes") {
            
            if ($posttodelete eq "0") { &error("删除回复&这里是用来删除回复的,不能删除主题!"); }
            
            ### First off, lets delete the post in the thread.
            
            $filetoopen = "$ikondir" . "forum$inforum/$intopic.thd";
            open(FILE, ">$filetoopen");
            flock(FILE, 2) if ($OS_USED eq "Unix");
                foreach $postline (@allthreads) {
                chomp $postline;
                    unless ($postcountcheck eq $posttodelete) { print FILE "$postline\n"; }
                    $postcountcheck++;
                    }
            close(FILE);

        
        $filetoopen = "$ikondir" . "forum$inforum/$intopic.thd";
        open(FILE, "$filetoopen");
        @allthreads = <FILE>;
        close(FILE);
    
        
        $totalposts = @allthreads;
        $posttograb = $totalposts;
        $posttograb--;
            
        ($postermembername2, $topictitle2, $postipaddress2, $showemoticons2, $showsignature2 ,$postdate2, $post2, $posticon2) = split(/\|/, @allthreads[$posttograb]);

        
        ### Now we have to adjust the post counts.
            
        $filetoopen = "$ikondir" . "forum$inforum/list.cgi";
        open(FILE, "$filetoopen");
        @alltopics = <FILE>;
        close(FILE);
        
        $count = "0";
        foreach $line (@alltopics) { #start foreach @threads
            ($tempno, $trash) = split(/\|/, $line);
            if ($intopic eq $tempno) {
                $linetokeep = $line;
                $keepcounter = $count;
            }
        $count++;
        } # end foreach
            
        ($topicid, $topictitle, $topicdescription, $threadstate, $threadposts ,$threadviews, $startedby, $startedpostdate, $lastposter, $lastpostdate, $posticon) = split(/\|/,$linetokeep);
        
        $threadposts = $totalposts - 1;
        
        $filetomake = "$ikondir" . "forum$inforum/list.cgi";
        open(FILE, ">$filetomake");
        flock(FILE, 2) if ($OS_USED eq "Unix");
        foreach $newline (@alltopics) { #start foreach @threads
        chomp($newline);
            ($tempno, $trash) = split(/\|/,$newline);
            if ($intopic eq $tempno) {
            print FILE "$topicid|$topictitle|$topicdescription|$threadstate|$threadposts|$threadviews|$startedby|$startedpostdate|$postermembername2|$postdate2|\n";
            }
        else { print FILE "$newline\n"; }
        }   
        close(FILE);
        
        
        ### Get the new last forum poster, and post date.
        
        $filetoopen = "$ikondir" . "forum$inforum/list.cgi";
        open(FILE, "$filetoopen");
        @alltopics = <FILE>;
        close(FILE);
        
        $linetokeep = @alltopics[0];
        chomp $linetokeep;
        
        ($trash, $trash, $trash, $trash, $trash, $trash, $trash, $trash, $lastforumposter, $lastforumpostdate) = split(/\|/,$linetokeep);
        chomp $forumlastposter;
        chomp $forumlastpostdate;
        
        ### Adjust the variables in the Forums Summary Page.
        
        $filetoopen = "$ikondir" . "data/allforums.cgi";
        open(FILE, "$filetoopen");
        @allforums = <FILE>;
        close(FILE);
        
        $filetomake = "$ikondir" . "data/allforums.cgi";
        open(FILE, ">$filetomake");
        flock(FILE, 2) if ($OS_USED eq "Unix");
        foreach $forum (@allforums) { #start foreach @forums
        chomp($forum);
            ($tempno, $trash) = split(/\|/,$forum);
                if ($inforum eq $tempno) {
                    ($forumid, $category, $categoryplace, $forumname, $forumdescription, $forummoderator ,$htmlstate ,$idmbcodestate ,$privateforum, $startnewthreads ,$lastposter ,$lastposttime, $threads, $posts, $forumgraphic) = split(/\|/,$forum);
                    $posts--;
                    print FILE "$forumid|$category|$categoryplace|$forumname|$forumdescription|$forummoderator|$htmlstate|$idmbcodestate|$privateforum|$startnewthreads|$lastforumposter|$lastforumpostdate|$threads|$posts|$forumgraphic|\n";
                }
            else { print FILE "$forum\n"; }
        }
        close(FILE);

        
        require "$ikondir" . "data/boardstats.cgi";
        
        $filetomake = "$ikondir" . "data/boardstats.cgi";
        $totalposts--;
        
        open(FILE, ">$filetomake");
        flock(FILE, 2) if ($OS_USED eq "Unix");
        print FILE "\$lastregisteredmember = \"$lastregisteredmember\"\;\n";
        print FILE "\$totalmembers = \"$totalmembers\"\;\n";
        print FILE "\$totalthreads = \"$totalthreads\"\;\n";
        print FILE "\$totalposts = \"$totalposts\"\;\n";
        print FILE "\n1\;";
        close (FILE);
            
            &mischeader("删除回复");
            
            
            $output .= qq~
            <table cellpadding=0 cellspacing=0 border=0 width=$tablewidth bgcolor=$tablebordercolor align=center>
            <tr>    
            <td>
            <table cellpadding=6 cellspacing=1 border=0 width=100%>
            <tr>
            <td bgcolor=$miscbacktwo valign=middle align=center><font face="$font" color=$fontcolormisc><b>回复已删除</b></font></td></tr>
            <tr>
            <td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>
            Status:
            <ul>
            <li><a href="$threadprog?forum=$inforum&topic=$intopic">返回主题</a>
            <li><a href="$forumsprog?forum=$inforum">返回论坛</a>
            <li><a href="$forumsummaryprog">返回论坛首页</a>
            </ul>
            </tr>
            </td>
            </table></td></tr></table>
            ~;

            } # end if clear to edit
            
            else { &error("删除回复&您不是坛主或版主!"); }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -