محدودیت ip صفحه ادمین با PHP

محدودیت ip صفحه ادمین با PHP

محدودیت ip ادمین با PHP – با کمک پی اچ پی و MYSQL پروژه ای را خواهیم ساخت که برای ورود به پنل ادمین نیازمند یک آی پی اختصاصی باشد که لیست این آی پی ها در جدول ip_admin ذخیره می شود .

در صورتی که ip کاربر در لیست نبود اجازه ورود به صفحه ادمین را نخواهد داشت و هدر 403 دریافت خواهد کرد به همراه پیغام دسترسی به صفحه ادمین با آی پی محدود شده است .

دموی برنامه


اسکریپت admin.php

<?php

require_once 'db.php';

$user_ip = $_SERVER['REMOTE_ADDR'];
$rows = getData("SELECT * FROM `ip_admin` WHERE ip=?", [$user_ip]);
$rows = end($rows);

if(empty($rows)){
	header('HTTP/1.0 403 Forbidden');
	die("دسترسی به صفحه ادمین با آی پی محدود شده است");
}
?>
<!DOCTYPE html>
<html lang="fa">
<head>
    <meta charset="UTF-8">
    <title>Rapidcode.iR - صفحه ادمین</title>
    <link rel="stylesheet" href="static/css/main.css">
</head>
<body>
    <div class="container">
        <a id="introduce" href="https://rapidcode.ir" target="_blank">رپید کد • کتابخانه مجازی برنامه نویسان</a>
       <h1>صفحه ادمین</h1>
    </div>
</body>
</html>


اسکریپت db.php جهت بررسی آی پی کاربر

<?php

$mysqli = new mysqli("localhost", "root", "", "cms");
if ($mysqli->connect_error) {
    die("MYSQL ISSUE : " . $mysqli->connect_error);
}

$mysqli->set_charset("utf8");
$stmt = $mysqli->stmt_init();
 
function getData($uquery, $data){
	global $stmt;
	$query = $uquery;
	$rows = [];
 
	$stmt->prepare($query);
	$stmt->bind_param(str_repeat("s", sizeof($data)), ...$data);
 
	if ($stmt->execute() && $res = $stmt->get_result()) {
		if ($stmt->affected_rows || $res->num_rows) {
			while ($row = $res->fetch_assoc()) {
				$rows[] = $row;
			}
		}	
	}
 
	return $rows;
}
 
?>


دانلود سورس محدودیت ip ادمین با PHP

ارسال نظر

جهت استفاده از کد حتما از تگ pre استفاده نمایید .

contact us