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

📄 chat-admin.pl

📁 java开发的聊天室
💻 PL
📖 第 1 页 / 共 2 页
字号:
else
{
	print "<CENTER><H1>你不能修改站长的密码哦!</H1></CENTER>";
}
}
else
{print "没有输入用户名!";}
print "</body></html>";
}

sub kicklog
{
&lockfile("$filehead$kicklogfile");
	open(KICKLOGFILE,"$filehead$kicklogfile");
	@line=<KICKLOGFILE>;
	close(KICKLOGFILE);	
&unlockfile("$filehead$kicklogfile");	
print "<html><head><title>系统操作日志</title>";
print "<LINK REL=stylesheet HREF='$cssurl' TYPE='text/css'>";
print "</head><body>";
	print "<p>系统操作日志:";
	foreach $line(@line)
	{
		print "<br>$line";
	}
	print "</p>";
	print "</body></html>";
}
sub showkickip
{
#显示所有在线用户ip

$temp="showkickip";
print "<html><head><title>封死IP地址</title>\n";
print "<META HTTP-EQUIV=REFRESH CONTENT='$reloadxx;URL=$cgiurl?job=$temp$userinfo'>\n";
print "<LINK REL=stylesheet HREF='$cssurl' TYPE='text/css'>";
print "</head>\n";
print "<body bgcolor=$onlineback text=$onlineword><center>\n";
print "封死IP地址<br>\n";
$temp="kickip";
print "<table border=1>";
print "<form method=post action=$cgiurl?job=$temp$userinfo>";
print "<tr><td>选择</td><td>IP地址</td><td>姓名</td><td>级别</td><td>性别</td><td>最后出现时间</td><td>管制状态</td></tr>\n";
$temp="";
$allusers=0;
#显示已被管制的用户
@addroom     =&readtxtfile($addroomfile,2);
   foreach (@addroom) {
   ($temp1,$roomname,$temp2)=split(/"/,$_);
$onlinefile="$roomname";
@online=&readtxtfile($onlinefile,2);
@online=sort @online;

foreach (@online) {

   ($mark,$chkuserip,$chkusername,$chkuserlevel,$chkusersex,$chktimen,$chksecn,$markend,$last)=split(/↑/,$_);
   if (($mark eq "online") && ($markend eq "end")) {
      if ($temp ne "$chkuserip↑$chkusername↑$chkuserlevel") {
	  	$allusers=$allusers+1;
         print "<tr>";
		if($chkuserlevel>2 || $chkusername eq $zhanzhang){print "<td>--</td>";}
		else { print "<td><input type=radio name=kickvar value=$chkuserip></td>";}
 		 print "<td>$chkuserip</td>";
		 print "<td>$chkusername</td>";
		 print "<td>$chkuserlevel</td>";
		 print "<td>$chkusersex</td>";
		 print "<td>$chktimen</td>";
		 print "<td>";

@kickip=&readtxtfile("$filehead$kickipfile",2);
		$kickstatus=0;
		foreach $line(@kickip) {  
       		chop($line);  
			if ($chkuserip eq $line){
				print "封死IP";
				$kickstatus=1;
				last;
			}
		}
		print "正常" if ($kickstatus eq 0);
		 print "</td></tr>\n";
      }
      $temp="$chkuserip↑$chkusername↑$chkuserlevel";  
   }
}
}
@kickip=&readtxtfile("$filehead$kickipfile",2);
foreach (@kickip)
{  
		chop($_);
		print "<tr><td><input type=radio name=kickvar value='$_'></td>";
		print "<td>$_</td>";
		print "<td>-</td>";
		print "<td>-</td>";
		print "<td>-</td>";
		print "<td>-</td>";
		print "<td>禁止<td></tr>\n";
}
print "<tr><td><input type=radio name=kickvar value=myip></td>";
print "<td colspan=6>超级踢IP地址<input type=text name=myip>(支持如:202.97.*.*)</td></tr>\n";
print "<tr><td colspan=7 align=center>冰花雪夜现共有$allusers位聊友在线!</td></tr></table>\n";
print "<br><input type=radio name=kickselect value=kick checked>封死IP<input type=radio name=kickselect value=unkick>取消封锁\n";
print "<br><input type=submit value=执行封锁><input type=reset value=重新选择>";
print "</form>";
print "</center></body></html>\n";
}

sub kickip
{
$kickact=&get_var("kickselect");
$name=$username;
$kickname=&get_var("kickvar");
		&lockfile("$filehead$kickipfile");
			open(KICKFILE,"$filehead$kickipfile");
   			@kickip = <KICKFILE>;  
   			close(KICKFILE);  
		&unlockfile("$filehead$kickipfile");
if ($kickact eq "kick") {

	#kick users;
 $kickname=&get_var("myip") if ($kickname eq "myip");
   $kick1=0;

	  	#判断是否已实行管制
   			foreach $line(@kickip) {  
       			chop($line);

      			if ( $line eq $kickname )
				{  
					$kick1=1;
					last;
         		}  
      		}  
			if($kick1 eq 0){
				#如果没有就进行管制
				&lockfile("$filehead$kickipfile");
            		open(KICKFILE,">>$filehead$kickipfile");
					print KICKFILE "$kickname\n"; 
					close(KICKFILE);
				&unlockfile("$filehead$kickipfile");
				&lockfile("$filehead$kicklogfile");
            		open(KICKLOGFILE,">>$filehead$kicklogfile");
					print KICKLOGFILE "[$daten1] $name将 $kickname 踢出聊天室。\n"; 
					close(KICKLOGFILE);					
				&unlockfile("$filehead$kicklogfile");
					
			}


}
elsif($kickact eq "unkick"){
&lockfile("$filehead$kicklogfile");
	open(KICKLOGFILE,">>$filehead$kicklogfile");
	print KICKLOGFILE "[$daten1] $name解除 $kickname 的管制。\n"; 
	close(KICKLOGFILE);	
&unlockfile("$filehead$kicklogfile");	
&lockfile("$filehead$kickipfile");
   	$test = 0;  
   	$usrno =0;
	open(KICKFILE,">$filehead$kickipfile");
   	foreach $line(@kickip) {  
		chop($line);
		if ( $line ne $kickname )
		{  
			print KICKFILE "$line\n"; 
      	}  
 	}
	close(KICKFILE);
&unlockfile("$filehead$kickipfile");	
}
&showkickip;
}

sub allonline {
$temp="";
   $onlinefile = $_[0];  
@online=&readtxtfile($onlinefile,2);
@online=sort @online;
require "$chathead/chat-usercount.pl";
foreach (@online) {

   ($mark,$chkuserip,$chkusername,$chkuserlevel,$chkusersex,$chktimen,$chksecn,$markend,$last)=split(/↑/,$_);
   if (($mark eq "online") && ($markend eq "end")) {
      if ($temp ne "$chkuserip↑$chkusername↑$chkuserlevel") {
  		if (!(($chksecn<$secn-$reloadxxx) || ($chksecn>$secn+$reloadxxx))) 	  {
	  	$allusers=$allusers+1;
         print "<tr>";
		if($chkuserlevel>3 || $chkusername eq $zhanzhang){print "<td>--</td>";}
		else { print "<td><input type=radio name=kickvar value=$chkusername></td>";}
 		 print "<td>$chkuserip</td>";
		 print "<td>$chkusername</td>";
		 print "<td>$chkuserlevel</td>";
		 print "<td>$chkusersex</td>";
		 print "<td>$chktimen</td>";
		 print "<td>";
		if ((&userstatus($chkusername)) eq 0)
		{print "禁用";}
		else {print "正常";}
		 print "</td></tr>\n";
      }
	  }
      $temp="$chkuserip↑$chkusername↑$chkuserlevel";  
   }
}
}

#用户修改密码显示窗口
sub chgmypwd
{
print "<html><head><title>用户资料修改</title>";
print "<LINK REL=stylesheet HREF='$cssurl' TYPE='text/css'>";
print "</head>";
open (CHECKPROFILE, "$memberspath/$username.txt");
@profile = <CHECKPROFILE>;
close (CHECKPROFILE);
@profilestats = split (/|/, $profile[0]);
open (CHECK1PROFILE, "$memberspath/$username$extcount");
@pro1file = <CHECK1PROFILE>;
close (CHECK1PROFILE);
@pro1filestats = split (/|/, $pro1file[0]);
print "<body bgcolor=$onlineback text=$onlineword>\n";
print "<center><table border=1>";
print "<caption>用户资料修改</caption>\n";
print "<form name=mypwd method=post action=$cgiurl?job=chgmypwdok$userinfo>\n";
print "<tr><TD align=center colspan=2>修改用户$username的详细资料</TD></tr>";
print "<tr><td>建立时间</td><td>$profilestats[0]</td></tr>";
print "<tr><td>帐号状态</td><td>";
print "禁用状态" if ($profilestats[3] eq 0);
print "正常状态" if ($profilestats[3] eq 1);
print "</td></tr>";
print "<tr><td>用户密码</td><td>新口令一次:<input type=password name=newpwd1><BR>新口令二次:<input type=password name=newpwd2></td></tr>";
print "<tr><td>真实姓名</td><td><input type=text name=profile13 value=$profilestats[13]></td></tr>";
print "<tr><td>电子邮件</td><td><input type=text name=profile14 value=$profilestats[14]></td></tr>";
print "<tr><td>出生年月</td><td><input type=text name=profile15 value=$profilestats[15]></td></tr>";
print "<tr><td>所在城市</td><td><input type=text name=profile16 value=$profilestats[16]></td></tr>";
print "<tr><td align=center colspan=2>其他信息</td></tr>";
print "<tr><td>登陆次数</td><td>$pro1filestats[4]次</td></tr>";
print "<tr><td>发言次数</td><td>$pro1filestats[6]次</td></tr>";
print "<tr><td>踢人次数</td><td>$pro1filestats[7]次</td></tr>";
print "<tr><td>私聊次数</td><td>$pro1filestats[8]次</td></tr>";
print "<tr><td>在线时间</td><td>$pro1filestats[5](分钟)</td></tr>";
print "<tr><td>踢人权利</td><td>$profilestats[9](0:无;1:有)</td></tr>";
print "<tr><td>用户级别</td><td>$profilestats[10]</td></tr>";
print "<tr><td>最后时间</td><td>$pro1filestats[12]</td></tr>";

print "<tr><td align=center colspan=2><input type=submit value=确认修改资料></td></tr>";
print "</table>";
print "<hr size=1><FONT COLOR=Fuchsia>如果您忘记密码请和管理员联系!</FONT><hr size=1>";
print "</CENTER></body></html>";

}
#用户修改密码
sub chgmypwdok
{
$newpwd1=&get_var("newpwd1");
$newpwd2=&get_var("newpwd2");
print "<html><head><title>用户密码修改</title>";
print "<META HTTP-EQUIV=REFRESH CONTENT='0;URL=$cgiurl?job=chgmypwd$userinfo'>";
print "<LINK REL=stylesheet HREF='$cssurl' TYPE='text/css'>";
print "</head>";
print "<body bgcolor=$onlineback text=$onlineword>\n";
if ($newpwd1 eq $newpwd2)
{
	open (CHECKPROFILE, "$memberspath/$username.txt");
	@profile = <CHECKPROFILE>;
	close (CHECKPROFILE);
	@profilestats = split (/|/, $profile[0]);
	if(($newpwd1 ne "")&&(length($newpwd1)>=6))
	{
		$profilestats[2]=crypt($newpwd2, substr($newpwd2, 0, 2)) ;
		$profilestats[13]=&get_var("profile13");
		$profilestats[14]=&get_var("profile14");
		$profilestats[15]=&get_var("profile15");
		$profilestats[16]=&get_var("profile16");		
		$tempstring=join('|',@profilestats);
		open (CHECKPROFILE, ">$memberspath/$username.txt");
		print CHECKPROFILE "$tempstring";
		close (CHECKPROFILE);   
		print "密码和其他信息修改成功!";
	}
	else
	{
		$profilestats[13]=&get_var("profile13");
		$profilestats[14]=&get_var("profile14");
		$profilestats[15]=&get_var("profile15");
		$profilestats[16]=&get_var("profile16");	
		$tempstring=join('|',@profilestats);
		open (CHECKPROFILE, ">$memberspath/$username.txt");
		print CHECKPROFILE "$tempstring";
		close (CHECKPROFILE);   
		print "信息修改成功!但密码没被修改,如想修改密码,请输入大于6个字符的密码!";	
	}
}
else
{
	print "<CENTER><H1>两次口令不一致!</H1></CENTER>";
}
print "</body></html>";
}

sub checkme
{
	$userno=0;
	for ($userno=0;$userno<=$#privateuser;$userno++)
	{
		return(1) if ($username eq $privateuser[$userno]);
	}
}
sub checkmetoo
{
	$userno=0;
	for ($userno=0;$userno<=$#privateuser;$userno++)
	{
		return(1) if ($_[0] eq $privateuser[$userno]);
	}
}
1;

⌨️ 快捷键说明

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