如何限制訪客的ip(PHPBB的程式碼)
代碼:
/**************************************************** ******** **********************
* admin_user_ban.php
* --------- ------- ---
* 開始:2001 年7 月31 日星期二
* 版權所有:(C) 2001 phpBB Group
* 電子郵件:[email]support@phpbb.com [/email]
*
* $Id: admin_user_ban.php,v 1.21.2.2 2002/05/12 15:57:45 psotfx Exp $
*
*
*
*** ********* ***************************************** ***************** ***************/
/**************************************************** ******** **********************
* 此檔案是phpBB2 移植到Nuke 6.0 的一部份(c) 版權所有2002
* 作者:Tom Nitzschner ([email]tom@toms-home.com[/email])
* [url]http://bbtonuke.sourceforge.net[/url] (或[url]http ://www.toms-home .com)[/url]
*
* 一如既往,在搞亂任何東西之前先進行備份。我發布的所有程式碼
*僅被視為範例程式碼。它可能完全
*功能,但您使用它需要您自擔風險,如果您破壞它,
*您也可以修復它。不提供或暗示任何保證。
*
* 請先在 [url]http://bbtonuke.sourceforge.net[/url] 上發布有關此連接埠的所有問題/請求,
* 然後在我的地點。所有原始標題代碼和版權訊息將保留
*,以在應得的信用處給予信用。如果您修改此內容,唯一的要求是
*您也保留所有原始版權訊息。我的所有作品均在 GNU 通用公共許可證下發布
*。請參閱自述文件以獲取更多資訊。
*
**************************************** *** ****************************************/
/**************************************************** ******** **********************
*
* 程式是免費軟體;您可以根據
*自由軟體基金會發布的GNU通用公共授權條款重新分發和/或修改
*它;許可證版本2,或
*(由您選擇)任何更高版本。
*
************************ ******************* *************************************** ***/
定義('IN_PHPBB' , 1);
if ( !empty($setmodules) )
{
$filename = basename(__FILE__);
$module['Users'][' Ban_Management'] = $filename;
return;
}
//
//載入預設標頭
//
$phpbb_path_path = './root./' ;
require($phpbb_root_path . 'extension.inc');
require('./pagestart.' . $phpEx);
//
// 啟動程式
//
// 啟動程式
//
if ( isset($HTTP_POST_VARS['submit']) )
{
$user_bansql = '';
$email_bansql = '';
$ip_bansql = '';
$user_list = array();
if ( !empty($HTTP_POST_VARS['用戶名']) )
{
$this_userdata = get_userdata($HTTP_POST_VARS['用戶名') ]);
if( !$this_userdata )
{
message_die(GENERAL_MESSAGE, $lang['No_user_id_specified']);
}
$ip_list = array();
if ( isset($HTTP_POST_VARS['ban_ip']) )
{
$ip_listtemp_explode( ',', $HTTP_POST_VARS['ban_ip']);
for($i = 0; $i
if ( preg_match( ' /^([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}).([0-9]{1 , 3})[ ]*-[ ]*([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3})。 ([0-9]{1,3})$/', trim($ip_list_temp[$i]), $ip_range_explode) )
{
//
// 不問所有這個,別問了...!為什麼
//
$ip_1_counter = $ip_range_explode[1];
$ip_1_end = $ip_range_explode[5];
while ( $ ip_1_counter $ip_2_counter = ( $ip_1_counter == $ip_range_explode[1] ) ? $ip_range_explode[2] : 0;
$ip_2_end = ( $ip_1_counter if ( $ip_2_counter == 0 && $ip_2_end == 254 )
{
$ip_2_counter = 255;
$ip_2_fragment = 2555;}
while ( $ip_2_counter {
$ip_3_counter = (ip_2_count; $ip_1_counter == $ip_range_explode[1] ) ? $ip_range_explode[3] : 0;
$ip_3_end = ( $ip_2_counter $ip_1_counter
if ( $ip_3_counter == 0 && $ip_3_end == 254 )
{
$ip_3_counter = 255;
$ip_3_fragment = 2555; encode_ip("$ip_1_counter.$ip_2_counter.255.255");
}
while ( $ip_3_counter {
$. 3] && $ip_2_counter == $ip_range_explode[2] && $ip_1_counter == $ip_range_explode[1] ) ? $ip_range_explode[4] : 0;
$ip_4_end = ( $ip_3_counter
if ( $ip_4_counter == 0 && $ip_4_end == 254 )
{
$ip_4_counter = 254 )
{
$ip_4_counter = 2555; 255;
$ip_list[] =encode_ip("$ip_1_counter.$ip_2_counter.$ip_3_counter.255");
}
while ( $ip_4_counter {
$ip_list[] =encode_ip("$ip_1_counter.$ip_2_counter.$ip_3_counter.$ipcount_counter.$ip4_counter");
}
$ip_3_counter ;
}
$ip_2_counter ;
}
$ip_1_counter ;
}<_>{
$ip = gethostbynamel(trim($ip_list_temp[$i]) ) ;
for($j = 0; $j {
if ( !empty($ip[$j]) )
{
$ip_list[] =encode_ip($ip[$j]);
}
}
}
else if ( preg_match('/^([0-9]{ 1, 3}).([0-9*]{1,3}).([0-9*]{1,3}).([0-9*]{1,3})$/' , 剪刀($ip_list_temp[$i])) )
{
$ip_list[] = 編碼_ip(str_replace('*', '255', 修剪($ip_list_temp[$i])));
}
}
}
$email_list = array();
if ( isset($HTTP_POST_VARS['ban_email']) )
{
$e_list_tempmail']) )
{
$e_list_tempmail'] (',', $HTTP_POST_VARS['ban_email']);
for($i = 0; $i {
//{
//
// 此ereg 匹配基於[email]php@unreelpro.com[/email]
// 包含在php.com 帶註釋的php 手冊(ereg
// 部分)
//
if ( eregi('^(([[:alnum:]*] ([-_.][[:alnum:]*] )*.?)|(*))@([[ :alnum:]] ([-_]?[[:alnum:]] )*.){1,3}([[:alnum:]]{2,6})$', 修剪($email_list_temp[$ i])) )
{
$email_list[] = trim($email_list_temp[$i]);
}
}
}
$sql = "SELECT *
來自」。 BANLIST_TABLE;
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, "無法取得黑名單資訊", "", __LINE__, __FILE__ , $ sql);
}
$current_banlist = $db->sql_fetchrowset($result);
$db->sql_freeresult($result);
$kill_session_freeresult($result);
$kill_session_sql ='' ;
for($i = 0; $i
$in_banlist = false;
for($j = 0; $j {
if ( $user_list[$i] == $current_banlist[$j]['ban_userid'] )
{
$ in_banlist = true;
}
}
if (!$in_banlist)
{
$kill_session_sql .= (( $kill_session_sql != '' ) ? ' 或' : ' ')。 user_list[$i];
$sql = "插入"。 !$db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "無法將ban_userid 信息插入數據庫", "", __LINE__, __FILE__, $sql);
}
}
}
for($i = 0; $i {
$in_banlist = false;
for($j = 0; $j {
if ( $ip_list[$i] == $current_banlist[$j]['ban_ip'] )
{
$in_banlist = true ;
}
}
if ( !$in_banlist )
{
if ( preg_match('/(ff.)|(.ff)/is' , chunk_split($ ip_list[$i], 2, '.')) )
{
$kill_ip_sql = "session_ip LIKE '" . str_replace('.', '', preg_replace('/(ff.)|(.ff)/is', '%', chunk_split($ip_list[$i], 2, "."))) 。 ";
}
else
{
$kill_ip_sql = "session_ip = '" . $ip_list[$i] 。 🎜>$sql = "插入" 。 sql) )
{
message_die( GENERAL_ERROR, "無法將ban_ip 資訊插入資料庫", "", __LINE__, __FILE__, $sql);
}
}
}
}
}
}
}
}
}
//
//現在我們報表會話表中刪除所有被禁止的邊界
//剛剛輸入隊列表的用戶或IP資訊...這將強制會話
//初始化導致即時現場
//
if ( $kill_session_sql != '' )
{
$sql = "DELETE FROM " .會話表。 !$db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "無法從資料庫中刪除禁止的會話", "" , __LINE__, __FILE__, $sql);
}
}
}
for($i = 0; $i
$in_banlist = false;
for($j = 0; $ j {
if ( $email_list[$i] == $current_banlist[$j ]['ban_email'] )
{
$in_banlist = true;
}
}
if ( !$in_banlist )
{
$sql = "插入「.禁止名單表。 " .str_replace("'", "''", $email_list[$i]) . "')";
if (!$db->sql_query($ sql) )
{
message_die (GENERAL_ERROR, "無法將ban_email 資訊插入資料庫", "", __LINE__, __FILE__, $sql);
}
}
}
$where_ '';if ( isset($HTTP_POST_VARS['unban_user']) )
{
$user_list = $HTTP_POST_VARS['unban_user'];
for($i = 0; $i {
if ( $user_list[$i] != -1 )
{
$where_sql .= (($where_sql!= '') ? ', ': '' $user_list[$i];
}
}
}
if ( isset($HTTP_POST_VARS['unban_ip']) )
{
$ip_list = $TP_$ ['unban_ip'];
for($i = 0; $i {
if ( $ip_list[$i] != - 1 )
{$where_sql .= (( $where_sql != '' ) ? ', ' : '' ) 。
if ( isset($HTTP_POST_VARS['unban_email']) )
{
$email_list = $HTTP_POST_VARS['unban_email'];
; $i {
if ( $email_list[$i] != -1 )
{
$where_sql .= ( ( $where_sql != '')?' ,':'')。 = "從" 刪除。 "無法從資料庫中刪除禁制令資訊", "", __LINE__, __FILE__, $sql);
}
}
$message = $lang['Ban_update_sucessful'] 。 >
'' 。
'' 。 /a>');
message_die(GENERAL_MESSAGE, $message);
}
else
{
$template->set_names(array'
);
$template->assign_vars(array(
'L_BAN_TITLE' => $lang['Ban_control'],
'L_BAN_EXPLAIN' = > $lang['Ban_explain'],
'L_BAN_EXPLAIN_WARN' => $lang['Ban_explain_warn'],
'L_IP_OR_HOSTNAME' = $lang_EMA['],
'L_IP_OR_HOSTNAME' = $RDR]['] ' => $lang['電子郵件地址'],
'L_SUBMIT' => $lang['提交'],
'L_RESET' => $lang['重置'],
'S_BANLIST_ACTION' =>append_sid("admin_user_ban.$phpEx"))
);
$template->assign_vars(array(
'L_BAN_US_o_> $name'[]]]]]> $SSonfffffnname'_> $SAN_USS> $name'SAN_USS> $name'SAN_USS> $name'SAN_USS> $name'SAN_USS> $name'SAN_USS> $name'SAN_USS> $name'SAN_USS> $name'SAN_USS> $name'SAN_USS> $name'SAN_USS> $name'SAN_USS> $name'Y]]]]'Sjname'sname'Somefffan’Spaname'SweAN_USSname'_> $name'Y]]]]> $name' ],
'L_BAN_USER_EXPLAIN' => $lang['Ban_username_explain'],
'L_BAN_IP' => $lang['Ban_IP'],
'L_BAN_IP_EXPLAIN' => $lang_Ban_d]
'L_BAN_EMAIL' => $lang['Ban_email'],
'L_BAN_EMAIL_EXPLAIN' => $lang['Ban_email_explain'])
);
$userban_count = 0; >$ipban_count = 0;
$emailban_count = 0;
$sql = "SELECT b.ban_id, u.user_id, u.username
FROM " 。禁止名單表。 「b」。用戶表。 “ u
其中 u.user_id = b.ban_userid
AND b.ban_userid 0
AND u.user_id ” 。匿名的 。 "
ORDER BY u.user_id ASC";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, '無法選擇當前user_id 禁止列表', '', __LINE__, __FILE__, $sql);
}
$user_list = $db->sql_fetchrowset($result);
$db->sql_freeresult( $result);
$select_userlist = '';
for($i = 0; $i {
$select_userlist .= '' . $user_list[$i]['用戶名'] 。'';
$userban_count ;
}
if( $select_userlist == '' )
{
$select_userlist = '' 。 ';
}
$select_userlist = '

技嘉的主板怎么设置键盘开机首先,要支持键盘开机,一定是PS2键盘!!设置步骤如下:第一步:开机按Del或者F2进入bios,到bios的Advanced(高级)模式普通主板默认进入主板的EZ(简易)模式,需要按F7切换到高级模式,ROG系列主板默认进入bios的高级模式(我们用简体中文来示范)第二步:选择到——【高级】——【高级电源管理(APM)】第三步:找到选项【由PS2键盘唤醒】第四步:这个选项默认是Disabled(关闭)的,下拉之后可以看到三种不同的设置选择,分别是按【空格键】开机、按组

随着视频号在社交媒体上的普及,越来越多的人开始利用视频号分享他们的日常生活、见解和故事。然而,一些用户可能会遇到评论被限制的情况,这会让他们感到困惑和不满。一、如何解除视频号评论限制?要解除视频号评论限制,首先必须确保账号已正常注册并完成实名认证。视频号对评论设有要求,只有完成实名认证的账号才能解除评论限制。如果账号存在异常情况,需要先解决这些问题才能解除评论限制。2.遵守视频号的社区规范。视频号对评论内容有一定的规范要求,如果评论涉及违规内容,会被限制发言。要解除评论限制,需要遵守视频号的社区

如何设置CentOS系统以限制用户对系统日志的修改在CentOS系统中,系统日志是非常重要的信息源,它记录了系统的运行状态、错误信息、警告等。为了保护系统的稳定性和安全性,我们应该限制用户对系统日志的修改。本文将介绍如何设置CentOS系统,实现对系统日志的修改权限限制。一、创建用户组和用户首先,我们需要创建一个专门负责管理系统日志的用户组,以及一个用于管理

JavaScript如何实现图片的拖动缩放同时限制在容器内?在Web开发中,经常会遇到需要对图片进行拖动和缩放的需求。这篇文章将介绍如何使用JavaScript实现图片的拖动缩放,并限制在容器内的操作。一、拖动图片要实现图片的拖动,我们可以使用鼠标事件来跟踪鼠标位置,并将图片的位置随之移动。下面是一个示例代码://获取图片元素varimage

内联模板函数将代码直接插入调用点,无需生成单独的函数对象,应用包括代码优化、性能提升、常量求值和代码简化。但要注意其局限性,例如编译时间延长、代码大小增加、可调试性降低以及跨编译单元的限制。

wps是一款集综合性操作的办公软件,现在可以下载wps进行使用,但是要想拥有更多的使用功能是需要注册会员的。有的人会疑惑wps会员最大可上传多大文档?如果是wps会员用户,上传文件时每次最高可以超大1G,而所有的文件加起来可以达到365G,不同的终端可能会存在部分差异,但总体显示是基本相似的。如果超过限制无法上传怎么办?接下来我们就进行讲解。1、上传文件,例如云文档,空间是存在一定大小的,超过了就无法再上传。2、点击会员标识,按照自己的需要购买会员,扩充空间。3、偶尔会出现优惠券,不要忘了使用。

函数重载的限制包括:参数类型和顺序必须不同(相同参数个数时),不能使用默认参数区分重载。此外,模板函数和非模板函数不能重载,不同模板规范的模板函数可以重载。值得注意的是,过度使用函数重载会影响可读性和调试,编译器从最具体到最不具体的函数进行搜索以解决冲突。

实现jQuery输入框限制数字和小数点输入在Web开发中,我们经常会遇到需求需要控制用户在输入框中输入的内容,比如限制只能输入数字和小数点。这种限制可以通过JavaScript和jQuery来实现。下面将介绍如何使用jQuery实现输入框限制数字和小数点输入的功能。一、HTML结构首先,我们需要在HTML中创建一个输入框,代码如下:


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3漢化版
中文版,非常好用

Dreamweaver Mac版
視覺化網頁開發工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。