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

📄 manage.php

📁 很不错的php聊天室源码,提供给大家学习
💻 PHP
📖 第 1 页 / 共 2 页
字号:
	}
	$db->query("update `members` set `upgrade` = 0 where `username` = '{$_POST["username"]}'");
	$db->query("insert into `logs` set `type` = '".logtype_names."',`action` = ".msg_ungrade.",`user` = '{$_POST["username"]}',`manager` = '{$_SESSION["username"]}',`time` = '".date("Y-m-d H:i:s")."',`why` = '".addslashes($_POST["why"])."'");
	$db->close();
	echo "<script language=javascript>opener.showNotice('禁止用户 <font color=\"blue\">{$_POST["username"]}</font> 自动分数升级成功!');window.close()</script>";
	exit;
}
if($_GET["mode"]==msg_grade)
{
	$db = new db_query;
	$db->connect();
	if($_SESSION["username"]==$_POST["username"])
	{
		echo "<script language=javascript>opener.showNotice('不允许对自己进行管理操作。');window.close()</script>";
		exit;
	}
	if($_SESSION["userrank"]<getConfig("enable_auto_grade"))
	{
		echo "<script language=javascript>opener.showNotice('您的级别无法完成此操作。');window.close()</script>";
		exit;
	}
	if(!$db->result($db->query("select count(*) from `members` where `username` = '{$_POST["username"]}'"),0,"count(*)"))
	{
		echo "<script language=javascript>opener.showNotice('系统找不到该用户。');window.close()</script>";
		exit;
	}
	/*//解除时候不进行检查
	if($_SESSION["userrank"]<=$db->result($db->query("select `rank` from `members` where `username` = '{$_POST["username"]}'"),0,"rank"))
	{
		echo "<script language=javascript>opener.showNotice('对方级别不比你底。');window.close()</script>";
		exit;
	}
	*/
	$db->query("update `members` set `upgrade` = 1 where `username` = '{$_POST["username"]}'");
	$db->query("insert into `logs` set `type` = '".logtype_names."',`action` = ".msg_grade.",`user` = '{$_POST["username"]}',`manager` = '{$_SESSION["username"]}',`time` = '".date("Y-m-d H:i:s")."',`why` = '".addslashes($_POST["why"])."'");
	$db->close();
	echo "<script language=javascript>opener.showNotice('解除用户 <font color=\"blue\">{$_POST["username"]}</font> 禁止自动分数升级成功!');window.close()</script>";
	exit;
}
if($_GET["mode"]==msg_unforbid)
{
	$db = new db_query;
	$db->connect();
	if($_SESSION["username"]==$_POST["username"])
	{
		echo "<script language=javascript>opener.showNotice('不允许对自己进行管理操作。');window.close()</script>";
		exit;
	}
	if($_SESSION["userrank"]<getConfig("enable_unforbid"))
	{
		echo "<script language=javascript>opener.showNotice('您的级别无法完成此操作。');window.close()</script>";
		exit;
	}
	if(!$db->result($db->query("select count(*) from `members` where `username` = '{$_POST["username"]}'"),0,"count(*)"))
	{
		echo "<script language=javascript>opener.showNotice('系统找不到该用户。');window.close()</script>";
		exit;
	}
	if($_SESSION["userrank"]<=$db->result($db->query("select `rank` from `members` where `username` = '{$_POST["username"]}'"),0,"rank"))
	{
		echo "<script language=javascript>opener.showNotice('对方级别不比你底。');window.close()</script>";
		exit;
	}
	$db->query("update `members` set `forbid` = 0 where `username` = '{$_POST["username"]}'");
	$db->query("insert into `logs` set `type` = '".logtype_names."',`action` = ".msg_unforbid.",`user` = '{$_POST["username"]}',`manager` = '{$_SESSION["username"]}',`time` = '".date("Y-m-d H:i:s")."',`why` = '".addslashes($_POST["why"])."'");
	$db->close();
	echo "<script language=javascript>opener.showNotice('解禁用户 <font color=\"blue\">{$_POST["username"]}</font> 成功!');window.close()</script>";
	exit;
}
if($_GET["mode"]==msg_unlock)
{
	$db = new db_query;
	$db->connect();
	if($_SESSION["userrank"]<getConfig("enable_unlock"))
	{
		echo "<script language=javascript>opener.showNotice('请检查您是否有足够的权限。');window.close()</script>";
		exit;
	}
	$db->query("delete from `lockedip` where `ip` = '{$_POST["ip"]}'");
	if($db->affectedrows())
	{
		echo "<script language=javascript>opener.showNotice('解锁IP {$_POST["ip"]} 成功。');window.close()</script>";
		$db->query("insert into `logs` set `type`='".logtype_manage."',`action` = '".msg_unlock."',`manager` = '{$_POST["ip"]}',`user` = '{$_SESSION["username"]}',`why` = '".addslashes($_POST["why"])."',`time` = '".date("Y-m-d H:i:s")."'");
		$message = array("private"=>"","event"=>"","from_user"=>"","type"=>"","roomid"=>"","content"=>"","to_user"=>"","title"=>"","namecolor"=>"","saycolor"=>"","face"=>"");
		$message["type"] = type_system;
		$message["from_user"] = $_SESSION["username"];
		$message["to_user"] = $_POST["ip"];
		$message["content"] = $_POST["why"];
		$message["event"] = msg_unlock;
		$message["roomid"] = $_SESSION["roomid"];
		addMessage($message,$db);
	}
	else
	{
		echo "<script language=javascript>opener.showNotice('解锁IP失败。该IP可能已经被解锁了。');window.close()</script>";
	}
	$db->close();
}
if($_GET["mode"]=="savecents")
{
	$db = new db_query;
	$db->connect();
	if(!verifyMember(session_id(),$_SESSION["username"]))
	{
		echo "location.href = 'notice.php?id=".not_login."'";
		exit;
	}
	$t1 = $db->result($db->query("select `lastsavecentstime` from `onlinelist` where `username` = '{$_SESSION["username"]}'"),0,"lastsavecentstime");
	$t2 = time();
	$t3 = floor(($t2-$t1)/60);
	if($cfg_sents_interval = $db->result($db->query("select `value` from `config` where `name` = 'savecents_interval'"),0,"value"))
	{
		if($cfg_sents_interval>$t3)
		{
			echo "showNotice('没有到达允许点数 <font color=red>{$cfg_sents_interval}</font> 点,当前增加点数 <font color=red>{$t3}</font> 点,操作不成功!')";
			exit;
		}
	}
	$db->query("update `members` set `cents` =`cents`+{$t3} where `username` = '{$_SESSION["username"]}'");
	$db->query("update `onlinelist` set `lastsavecentstime` = '".time()."' where `username` = '{$_SESSION["username"]}'");
	echo "showNotice('成功存入 <font color=red>{$t3}</font> 点');";
	
	//分数自动升级
	$nowRank = $db->result($db->query("select `rank` from `members` where `username` = '{$_SESSION["username"]}'"),0,"rank");
	$totalCents = $db->result($db->query("select `cents` from `members` where `username` = '{$_SESSION["username"]}'"),0,"cents");
	if($db->result($db->query("select `upgrade` from `members` where `username` = '{$_SESSION["username"]}'"),0,"upgrade")==1)
	{
		if(getConfig("enable_grade_auto_increment")==1)
		{
			$gradecents = getConfig("grade2_cents");
			if(($totalCents>=$gradecents)&&($gradecents>0)&&($nowRank<2))
			{
				$db->query("update `members` set `rank` = 2 where `username` = '{$_SESSION["username"]}'");
			}
			$gradecents = getConfig("grade3_cents");
			if(($totalCents>=$gradecents)&&($gradecents>0)&&($nowRank<3))
			{
				$db->query("update `members` set `rank` = 3 where `username` = '{$_SESSION["username"]}'");
			}
			$gradecents = getConfig("grade4_cents");
			if(($totalCents>=$gradecents)&&($gradecents>0)&&($nowRank<4))
			{
				$db->query("update `members` set `rank` = 4 where `username` = '{$_SESSION["username"]}'");
			}
			$gradecents = getConfig("grade5_cents");
			if(($totalCents>=$gradecents)&&($gradecents>0)&&($nowRank<5))
			{
				$db->query("update `members` set `rank` = 5 where `username` = '{$_SESSION["username"]}'");
			}
			$gradecents = getConfig("grade6_cents");
			if(($totalCents>=$gradecents)&&($gradecents>0)&&($nowRank<6))
			{
				$db->query("update `members` set `rank` = 6 where `username` = '{$_SESSION["username"]}'");
			}
			$gradecents = getConfig("grade7_cents");
			if(($totalCents>=$gradecents)&&($gradecents>0)&&($nowRank<7))
			{
				$db->query("update `members` set `rank` = 7 where `username` = '{$_SESSION["username"]}'");
			}
			$gradecents = getConfig("grade8_cents");
			if(($totalCents>=$gradecents)&&($gradecents>0)&&($nowRank<8))
			{
				$db->query("update `members` set `rank` = 8 where `username` = '{$_SESSION["username"]}'");
			}
			$gradecents = getConfig("grade9_cents");
			if(($totalCents>=$gradecents)&&($gradecents>0)&&($nowRank<9))
			{
				$db->query("update `members` set `rank` = 9 where `username` = '{$_SESSION["username"]}'");
			}
			$gradecents = getConfig("grade10_cents");
			if(($totalCents>=$gradecents)&&($gradecents>0)&&($nowRank<10))
			{
				$db->query("update `members` set `rank` = 10 where `username` = '{$_SESSION["username"]}'");
			}
			$gradecents = getConfig("grade11_cents");
			if(($totalCents>=$gradecents)&&($gradecents>0)&&($nowRank<11))
			{
				$db->query("update `members` set `rank` = 11 where `username` = '{$_SESSION["username"]}'");
			}
			$gradecents = getConfig("grade12_cents");
			if(($totalCents>=$gradecents)&&($gradecents>0)&&($nowRank<12))
			{
				$db->query("update `members` set `rank` = 12 where `username` = '{$_SESSION["username"]}'");
			}
		}
	}
	$yourRank = $db->result($db->query("select `rank` from `members` where `username` = '{$_SESSION["username"]}'"),0,"rank");
	$_SESSION["userrank"] = $yourRank;
	echo "userrank = '{$yourRank}';";
	echo "showNotice('您当前总点数为 <font color=red>{$totalCents}</font> 点。');";
	echo "showNotice('您当前的级别为 <font color=red>{$_SESSION["userrank"]}</font> 级。');";
	$db->close();
	exit;
}
if($_GET["mode"] == "warning")
{
	if(!verifyMember(session_id(),$_SESSION["username"]))
	{
		echo "top.location.href='notice.php?id".not_login."'";
		exit;
	}
	$db = new db_query;
	$db->connect();
	if(!isset($_SESSION["warnings"]))
	{
		session_register("warnings");
		$_SESSION["warnings"] = 1;
	}
	else
	{
		$_SESSION["warnings"]++;
	}
	if($_SESSION["warnings"] >= getConfig("warning_out_number"))
	{
		//超过设置的警告次数
		$db->query("update `members` set `lastkicktime` = '".time()."' where `username` = '{$_SESSION["username"]}'");
		$_SESSION["warnings"] = 0;
		$message = array("private"=>"","event"=>"","from_user"=>"","type"=>"","roomid"=>"","content"=>"","to_user"=>"","title"=>"","namecolor"=>"","saycolor"=>"","face"=>"");
		$message["type"] = type_system;
		$message["from_user"] = $_SESSION["username"];
		$message["to_user"] = $_SESSION["username"];
		$message["event"] = msg_warning_out;
		$message["roomid"] = $_SESSION["roomid"];
		addMessage($message,$db);
		//记录到日志
		$db->query("insert into `logs` set `type` = '".logtype_manage."',`action` = ".msg_warning_out.",`user` = '{$_SESSION["username"]}',`manager` = '聊天室系统',`time` = '".date("Y-m-d H:i:s")."'");
		UnOnline($_SESSION["username"]);
		echo "top.location.href='notice.php?id=".msg_warning_out."'";
	}
	else
	{
		echo "showNotice(\"您已经被警告 <font color='blue'>{$_SESSION["warnings"]}</font> 次了。\")";
	}
	$db->close();
}
if($_GET["mode"] == "changeRoom")
{
	$db = new db_query;
	$db->connect();
	if(!verifyMember(session_id(),$_SESSION["username"]))
	{
		header("location:notice.php?id=".not_login);
		exit;
	}
	if(!$db->result($db->query("select count(*) from `rooms` where `id` = '{$_GET["roomid"]}'"),0,"count(*)"))
	{
		header("location:notice.php?id=".room_notexists);
		exit;
	}
	if($db->result($db->query("select count(*) from `onlinelist` where `roomid` ='{$_GET["roomid"]}'"),0,"count(*)")>=$db->result($db->query("select `maxonline` from `rooms` where `id` = '{$_GET["roomid"]}'"),0,"maxonline"))
	{
		header("location:notice.php?id=".room_full);
		exit;
	}
	if($db->result($db->query("select `grade` from `rooms` where `id` = '{$_GET["roomid"]}'"),0,"grade")>$_SESSION["userrank"])
	{
		header("location:notice.php?id=".cant_changeroom);
		exit;
	}
	$db->query("update `onlinelist` set `roomid` = '{$_GET["roomid"]}' where `username` = '{$_SESSION["username"]}'");
	$roomname = $db->result($db->query("select `room_name` from `rooms` where `id` = '{$_GET["roomid"]}'"),0,'room_name');
	$message = array();
	$message = array("private"=>"","event"=>"","from_user"=>"","type"=>"","roomid"=>"","content"=>"","to_user"=>"","title"=>"","namecolor"=>"","saycolor"=>"","face"=>"");
	$message["event"] = msg_changeroom;
	$message["from_user"] = $_SESSION["username"];
	$message["type"] = type_system;
	$message["saycolor"] = $_SESSION["gender"];
	$message["roomid"] = $_SESSION["roomid"];
	$message["content"] = $roomname;
	addMessage($message,$db);
	$message["event"] = msg_login;
	$message["from_user"] = $_SESSION["username"];
	$message["type"] = type_system;
	$message["saycolor"] = $_SESSION["gender"];
	$message["roomid"] = $_GET["roomid"];
	addMessage($message,$db);
	$_SESSION["roomid"] = $_GET["roomid"];
	header("location:main.php");
	$db->close();
	exit;
}
if($_GET["mode"]=="posterror")
{
	$db = new db_query;
	$db->connect();
	if(!verifyMember(session_id(),$_SESSION["username"]))
	{
		echo "<script language=javascript>window.close()</script>";
	}
	else
	{
		//执行发送报告
		$db->query("insert into `logs` set `user` = '{$_GET["username"]}',`type`='".logtype_error."',`action` = 6,`time` = '".date("Y-m-d H:i:s")."',`why` = '".addslashes($_GET["sMsg"])."\t{$_GET["sLine"]}\t{$_GET["sUrl"]}\t{$_GET["getMessageNumber"]}\t{$_GET["username"]}\t{$_GET["userrank"]}\t".addslashes($_GET["chatroom_name"])."\t".addslashes($_GET["chatroom_roomname"])."',`tags` = '".addslashes($_GET["lastContent"])."'");
		echo "报告已经发送";
		echo "<script language=javascript>window.close()</script>";
	}
	$db->close();
}
?>

⌨️ 快捷键说明

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