Достъп до админ панел

  • Автор Автор ivo75
  • Начална дата Начална дата

ivo75

Registered
Как да защитя админ панела? Имам 5-6 файла в една папка като всички се зареждат в един файл т.е. искам достъпа до този файл, в който се зареждат останалите да става чрез потребителско име и парола, а другите да не могат да се отварят директно, а да се зареждат само във файла на който достъпа става чрез потребителско име и парола.
 
В този файл, в който се зареждат нещата сложи някаква константа:

Код:
define('ALLOWED', 'OK');

И в останалите файлове:

Код:
defined('ALLOWED') OR exit('No direct script access allowed');
 
Защита на страница - влизане с парола:
PHP:
<?php 
$user = $_POST['user']; 
$pass = $_POST['pass']; 
if("$pass" == ""){ 
?> 
<form action="" method="post"> 
Потребител: <input type="text" name="user" /><br /> 
Парола: <input type="password" name="pass" /><br /> 
<input type="submit" value="Вход"> 
</form> 
<?php 
exit; 
} 
if ($user != 'admin' || $pass != 'admin'){ 
exit; 
} 
?>
 
Fakeheal каза:
В този файл, в който се зареждат нещата сложи някаква константа:

Код:
define('ALLOWED', 'OK');

И в останалите файлове:

Код:
defined('ALLOWED') OR exit('No direct script access allowed');

Как да използвам това с константата, дай малко повече инфо.
 
Просто, ако във файла index.php зареждаш всички други файлове слагаш например отгоре или след session_start() (ако имаш)

Код:
define('ALLOWED','ok');

Трябва да стане нещо от сорта на
Код:
<?php
session_start();
define('ALLOWED','ok');
[[....more code...]]

А в останалите файлове след <?php слагаш това:
Код:
defined('ALLOWED') OR exit('No direct script access allowed');

И трябва да изглежда така:
Код:
<?php
defined('ALLOWED') OR exit('No direct script access allowed');

[[...more code ... ]]
 
Това "ОК" какво представлява някаква променлива ли е какво е?
 
Константа.

Идеята, че ако се include-ва от онзи файл, главният, ще бъде дефинирана константата. Ако не е дефинирана константата значи се извиква някой файл директно, не през главния файл.
 

Back
Горе