$allowed_ips = "127.0.0.1";
$ips = explode(" ",$allowed_ips);
if (array_search($_SERVER["REMOTE_ADDR"],$ips) === FALSE) {
echo "<p>Уважаемый хакер! Обещаю, я заблокирую ваш IP при очередной попытке поиметь админку.";
exit;
};
Там не синтаксические, если будет возможность, щас набросаю свой вариантмогут быть синтаксис ошибки ,писал на быструю руку
Нет. там надо подключение к бд настроить типо, так же нужен таблицу создать ( он не скинул запрос)Если я этот скрипт инклюдом сделаю, будет работать?
Та ну хз, можно и ткт, зачем паритьсяда надо сделать MYSQL Таблицу ,сделать подключение и работать будетМожно место MYSQL сделать в .txt формате,ну это не удобно для быстрых манипуляций
session_start();
$allowed_ips = array(
"1" => "127.0.0.1",
"2" => "127.0.0.2",
"3" => "127.0.0.3",
);
$file = 'bannedip.txt';
$try = 'tryip.txt';
$ip = getIp();
if (array_search($ip, $allowed_ips) < 1) {
$atempt = (isset($_SESSION["atempt"])) ? $_SESSION["atempt"] : 0;
if ($atempt != 1) {
$_SESSION["atempt"] = 1;
$content = " \r\n " . $ip . " - " . date("Y-m-d H:i:s");
file_put_contents($try, $content, FILE_APPEND | LOCK_EX);
die("Уважаемый хакер! Обещаю, я заблокирую ваш IP при очередной попытке поиметь админку.");
exit();
}
else {
$content = " \r\n " . $ip . " - " . date("Y-m-d H:i:s");
file_put_contents($file, $content, FILE_APPEND | LOCK_EX);
die("GL HF.");
exit();
}
}
function getIp() {
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$ip = $_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
else {
$ip = $_SERVER['REMOTE_ADDR'];
}
return $ip;
}
if(!file_exists(FCreator::PATH_TO_FILE)
{
FCreator::getInstance()->createAndWrite();
} else {
FCreator::getInstance()->write();
}
class FCreator
{
public const PATH_TO_FILE = "путь к файлу";
public static function getInstance()
{
return self::i = new FCreator();
}
public function write()
{
if(file_put_contents(PATH_TO_FILE, "Подключение на маршрут администратора. IP адрес: ".SERVER['REMOTE_ADDR']." Дата:".date('Y/m/d-h:m'))) {
//записано в файл
} else {
//unknown error
}
}
public function createAndWrite()
{
fcreate(PATH_TO_FILE);
$this->write();
}
}
Та ну хз, можно и ткт, зачем париться
Я чутка переделал твой вариант)
PHP:session_start(); $allowed_ips = array( "1" => "127.0.0.1", "2" => "127.0.0.2", "3" => "127.0.0.3", ); $file = 'bannedip.txt'; $try = 'tryip.txt'; $ip = getIp(); if (array_search($ip, $allowed_ips) < 1) { $atempt = (isset($_SESSION["atempt"])) ? $_SESSION["atempt"] : 0; if ($atempt != 1) { $_SESSION["atempt"] = 1; $content = " \r\n " . $ip . " - " . date("Y-m-d H:i:s"); file_put_contents($try, $content, FILE_APPEND | LOCK_EX); die("Уважаемый хакер! Обещаю, я заблокирую ваш IP при очередной попытке поиметь админку."); exit(); } else { $content = " \r\n " . $ip . " - " . date("Y-m-d H:i:s"); file_put_contents($file, $content, FILE_APPEND | LOCK_EX); die("GL HF."); exit(); } } function getIp() { if (!empty($_SERVER['HTTP_CLIENT_IP'])) { $ip = $_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { $ip = $_SERVER['HTTP_X_FORWARDED_FOR']; } else { $ip = $_SERVER['REMOTE_ADDR']; } return $ip; }
хорошую тему поднялДа зачееем) если он пытается поиметь админку, ему и пожизненного мало будет)
Можно еще и панельку прикнутить, в который все забаненные ип, с данными о браузере и т.п.Отлично,еще допиши как проверочку при заходе на СР если есть файл ip блок ставило ,и кстати если в дальнейшем он будет проводить манипуляций с ip адресами ,запихивать в .txt формат плохая практика ,это лишний ресурсы, сделать функциональность для снятия бана ,или что то похожие будет геморно или +бан со временем на 1 час 1 день или на 1год
Ну "на добром слове" я тебе помог.Расширение функционала приветствуется))
куча примеров почему он ухватывает бан (не за что ) первый простой переход по ссылке например ср/admin кто нибудь такой плюшку спостил как на приколе игрушка БАНДа зачееем) если он пытается поиметь админку, ему и пожизненного мало будет)
Ну давай Форум администраторов игровых серверов - Вход в панель управления | Панель управления - Форум администраторов игровых серверовДа зачееем) если он пытается поиметь админку, ему и пожизненного мало будет)
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?