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

📄 memberlist.cgi

📁 一个linux论坛
💻 CGI
📖 第 1 页 / 共 2 页
字号:
#!/usr/bin/perl
#############################################################
#  LeoBoard ver.5000 / LB5000 / 雷傲超级论坛 ver.5000
#
#  版权所有: 雷傲工作室(原蓝宝石软件工作室)
#
#  制作人  : 山鹰糊 (Shining Hu)
#            花无缺 (Ifairy Han)
#
#  主页地址: http://www.CGIer.com/      CGI 编程者之家
#	     http://www.LeoBoard.com/   雷傲论坛支持主页
#	     http://www.leoBBS.com/     本论坛直通车
#
#############################################################
BEGIN {
    $start_time = (times)[0] + (times)[1];
    $LBPATH = '.';
    my $pgm = $0;
    $pgm =~s/\\/\//g;
    $pgm =~s/^.*\/([^\/]+)$/$1/g;
    unless (-e $LBPATH.'/'.$pgm) {
        foreach ($0, $ENV{'SCRIPT_FILENAME'}, $ENV{'PATH_TRANSLATED'}) {
            s!\\!/!g; s/^(.*)\/[^\/]+$/$1/g;
            if (-e $_ . '/' .$pgm) { $LBPATH = $_; last; }
        }
    }
    unshift (@INC, "$LBPATH");
}
use LBCGI;
$LBCGI::POST_MAX=2000;
$LBCGI::DISABLE_UPLOADS = 1;
$LBCGI::HEADERS_ONCE = 1;
require "data/boardinfo.cgi";
require "data/boardstats.cgi";
require "data/styles.cgi";
require "data/membertitles.cgi";
require "lb.lib.pl";
$|++;
$query = new LBCGI;
&ipbanned; #封杀一些 ip


$backgroundcolor = "005984";
$topanzahl       = 20;       #显示发贴前多少名?显示最新多少个加入的用户?
$startseite      = "1";         	#默认排序:  1->发贴数, 2->前N名, 3->用户名, 4->注册日期
$memberproseite  = 25; 	#每页显示用户数
if (! $inmembername) { $inmembername = cookie("amembernamecookie"); }
if (! $inpassword)   { $inpassword   = cookie("apasswordcookie");   }
$inmembername =~ s/[\a\f\n\e\0\r\t\`\~\!\@\#\$\%\^\&\*\(\)\+\=\\\{\}\;\'\:\"\,\.\/\<\>\?]//isg;
$inpassword =~ s/[\a\f\n\e\0\r\t\|\@\;\#\{\}\$]//isg;

if ($inmembername eq "" || $inmembername eq "客人" ) {
   $inmembername = "客人";
}

if ($infosopen == 2) {
#    &getmember("$inmembername");
    &getmembernolock("$inmembername");
    &error("查看会员列表&客人无权查看会员列表!") if ($inmembername eq "客人");
    if ($userregistered eq "no") { &error("查看会员列表&你还没注册呢!"); }
    elsif ($inpassword ne $password) { &error("查看会员列表&你的密码有问题!"); }
    &error("查看会员列表&论坛会员列表只有坛主和版主可以查看!") if (($membercode ne "ad")&&($membercode ne 'smo')&&($membercode ne 'cmo')&&($membercode ne "mo"));
}
elsif ($infosopen == 1) {
#    &getmember("$inmembername");
    &getmembernolock("$inmembername");
    &error("查看会员列表&客人无权查看会员列表!") if ($inmembername eq "客人");
    if ($userregistered eq "no") { &error("查看会员列表&你还没注册呢!"); }
    elsif ($inpassword ne $password) { &error("查看会员列表&你的密码有问题!"); }
}
else {
#    &getmember("$inmembername");
    &getmembernolock("$inmembername");
}
$cpudisp = 1 if (($membercode eq "ad")||($membercode eq "smo"));
&title;
my $filetoopens = "$lbdir" . "data/onlinedata.cgi";
$filetoopens = &lockfilename($filetoopens);
if (!(-e "$filetoopens.lck")) {
&whosonline("$inmembername\t用户列表\tnone\t查看用户列表\t");
}
open (FILE, "$lbdir/data/lbmember.cgi");
@file = <FILE>;
close (FILE);
$totlemembertemp=@file;
$query = new LBCGI;
$L = $query -> param ("L");
if($L){
$pagel="&L=$L";
$LL=lc($L) if($L ne "*");
@CCfile=@file;@file=();
if($L eq "*"){
@file=grep(/^[^a-zA-Z]/,@CCfile);
}else{
@file=grep(/^[$L|$LL]/,@CCfile);
}
}
foreach $line (@file) {
@tmpuserdetail = split (/\t/, $line);
chomp @tmpuserdetail;
if ($tmpuserdetail[1] eq banned) {push (@banned, "$tmpuserdetail[0]"); }
push (@cgi, "$tmpuserdetail[0]");
$postundmember {"$tmpuserdetail[0]"} = $tmpuserdetail[2];
$datumundmember {"$tmpuserdetail[0]"} = $tmpuserdetail[3];
}
@cgi=sort(@cgi);
@sortiert = reverse sort { $postundmember{$a} <=> $postundmember{$b} } keys(%postundmember);
@sortiert1 = sort { $datumundmember{$a} <=> $datumundmember{$b} } keys(%datumundmember);
@sortiert2 = reverse(@sortiert1);
    if ($boardlogo =~ /\.swf$/i) {$forumgraphic = qq~<PARAM NAME=PLAY VALUE=TRUE><PARAM NAME=LOOP VALUE=TRUE><PARAM NAME=QUALITY VALUE=HIGH><embed src=$imagesurl/myimages/$boardlogo quality=high width=$boardlogow height=$boardlogoh pluginspage="http:\/\/www.macromedia.com\/shockwave\/download\/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application\/x-shockwave-flash"><\/embed>~}
        else {$forumgraphic = qq~<img src=$imagesurl/myimages/$boardlogo>~};
$output .= qq~
           <table cellpadding=0 cellspacing=0 border=0 width=$tablewidth align=center>
           <tr>
           <td width=30% rowspan=2 valign=top>$forumgraphic</td>
           <td valign=middle align=left><font color=$fontcolormisc>
            <img src=$imagesurl/images/closedfold.gif border=0> <a href=leoboard.cgi>$boardname</a><br>
            <img src=$imagesurl/images/bar.gif border=0 width=15 height=15><img src=$imagesurl/images/openfold.gif border=0> 用户列表
           </td>
           <tr>
           <td valign=bottom align=right>&nbsp; $helpurl</td>
           </tr>
           </table><br>~;
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
$a = $query -> param ("a");
$buffer=~s/\&L=(\S+?)//isg;
$searchmembername = $query -> param ("searchmember"); 
if ($searchmembername  ne "") { 
$a = 0; 
&searchmember} 

if ($a eq '' && $buffer eq '')
{$buffer = "a=$startseite";}
else
{($buffer = "$buffer") || ($buffer = "a=$a");}
if ($buffer eq 'a=1') {&Postsortiert}
elsif ($buffer eq 'a=2') {&Topten}
elsif ($buffer eq 'a=3') {&Namensortiert}
elsif ($buffer eq 'a=4') {&datum}
elsif ($buffer eq 'a=5') {&redatum}
elsif ($buffer eq 'a=6') {&banned}

sub Namensortiert {
    $query = new LBCGI;
    $inpage = $query -> param ("page");
    if ($inpage eq "") { $inpage = 1; }
	$a = 3;
	@memberarray = @cgi;
	&splitting;
	$Listenname = "以用户名排序";
	&Tabellenanfang;
	foreach $member (@cgi[$startmember ... $endmember]) {
	    $member =~s/ /_/g;
            $member =~ tr/A-Z/a-z/;
            $member =~s/_/\_/g;
            $usrfile = "${lbdir}$memdir/$member.cgi";
            $usrfile = "${lbdir}$memdir/old/$member.cgi" if (!(-e $usrfile));
	    if (-e "$usrfile") {
		open(FILE, "$usrfile" );
		$memberdaten = <FILE>;
		close(FILE);
		&Listing;
	    }
	}
	$output .= qq~</table>~;
}
sub banned {
    $query = new LBCGI;
    $inpage = $query -> param ("page");
    if ($inpage eq "") { $inpage = 1; }
	$a = 6;
	@memberarray = @banned;
	&splitting;
	$Listenname = "监狱中的犯人";
	&Tabellenanfang;
	foreach $member (@banned[$startmember ... $endmember]) {
	    $member =~s/ /_/g;
	    $member =~s/_/\_/g;
            $member =~ tr/A-Z/a-z/;
            $usrfile = "${lbdir}$memdir/$member.cgi";
            $usrfile = "${lbdir}$memdir/old/$member.cgi" if (!(-e $usrfile));
	    if (-e "$usrfile") {
		open(FILE, "$usrfile" );
		$memberdaten = <FILE>;
		close(FILE);
		&Listing;
	    }
	}
	$output .= qq~</table>~;
}

sub searchmember { 
        $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 align=center><font color=$fontcolormisc><b>会员 $searchmembername 资料查找中 , 请稍后</b></font></td></tr> 
          <tr> 
          <td bgcolor=$miscbackone><font color=$fontcolormisc> 
          具体情况 : 
          <ul> 
          <li><a href="memberlist.cgi?a=4">返回用户列表</a> 
          <li><a href="leoboard.cgi">返回论坛首页</a> 
          </ul> 
          </tr> 
          </td> 
          </table></td></tr></table> 
          <meta http-equiv="refresh" content="3; url=profile.cgi?action=show&member=~ . ($uri_escape eq "no" ? $searchmembername : uri_escape($searchmembername)) . qq~"> 
          ~; 
          } 


sub Postsortiert {
	$query = new LBCGI;
    $inpage = $query -> param ("page");
    if ($inpage eq "") { $inpage = 1; }
	$a = 1;
	@memberarray = @sortiert;
	&splitting;
	$Listenname = "以发贴总数排序";
	&Tabellenanfang;
	foreach $member (@sortiert[$startmember ... $endmember]) {
	    $member =~s/ /_/g;
	    $member =~s/_/\_/g;
            $member =~ tr/A-Z/a-z/;
            $usrfile = "${lbdir}$memdir/$member.cgi";
            $usrfile = "${lbdir}$memdir/old/$member.cgi" if (!(-e $usrfile));
	    if (-e "$usrfile") {
		open(FILE, "$usrfile" );
		$memberdaten = <FILE>;
		close(FILE);
		&Listing;
	    }
	}
	$output .= qq~</table>~;

}
sub Topten {
    $Listenname = "发贴总数前 $topanzahl 名";
    &Tabellenanfang;
    @sortiert = splice(@sortiert,0,$topanzahl);
    foreach $member (@sortiert) {
        $member =~s/ /_/g;

⌨️ 快捷键说明

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