Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2010, 22:04   #1
Web-Gangsta
HTML, JS, CSS, PHP
Форумчанин
 
Аватар для Web-Gangsta
 
Регистрация: 20.04.2009
Сообщений: 233
Вопрос Администраторская на сайте

Доброго времени суток.

Первый раз буду делать "администраторскую комнату" на сайте. Поэтому не могу понять что и как. В общем, у меня есть форма авторизации, и проходя через нее мне нужно отсеивать кто может редактировать сайт, а кто нет. Т.к. в серверных языках программирования я довольно таки слаб, поэтому создал данную тему, прошу помочь. ) Возможно нужен какой-то скрипт для защиты каждой страницы. Я просто не знаю как это правильнее.
[ Вот здесь должен был быть мой юзербар... Но... ]
Web-Gangsta вне форума Ответить с цитированием
Старый 05.04.2010, 22:29   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

Правильнее - погуглить или поискать на форуме об авторизации, сессиях и создании админок для сайта
ADSoft вне форума Ответить с цитированием
Старый 05.04.2010, 22:33   #3
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

Начините с чего-нибудь простого, сделайте гостевую книгу для начала, тогда отпадёт этот момент:
Цитата:
Сообщение от Web-Gangsta
в серверных языках программирования я довольно таки слаб
А делать админку при слабостях в серверных языках противопоказано в принципе.
Arigato вне форума Ответить с цитированием
Старый 06.04.2010, 01:34   #4
nec117
Форумчанин
 
Регистрация: 01.10.2008
Сообщений: 266
По умолчанию

Ну если очень нужно ограничить доступ к админке и всему что нахожится в каталоге admin. И нет сил, времени или желания возиться с сессиями и добавлять функции отслеживания в каждую страницу админки, то воспользуйтесь средствами апача, а именно htaccess. Введите в гугле htpasswd
nec117 вне форума Ответить с цитированием
Старый 06.04.2010, 10:56   #5
Web-Gangsta
HTML, JS, CSS, PHP
Форумчанин
 
Аватар для Web-Gangsta
 
Регистрация: 20.04.2009
Сообщений: 233
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
А делать админку при слабостях в серверных языках противопоказано в принципе.
Но учиться когда-то надо же? Или если есть специалисты, то новые учиться не должны? )
[ Вот здесь должен был быть мой юзербар... Но... ]

Последний раз редактировалось Web-Gangsta; 06.04.2010 в 11:10.
Web-Gangsta вне форума Ответить с цитированием
Старый 06.04.2010, 12:03   #6
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

Web-Gangsta
Я написал, с чего лучше начать обучение.
Arigato вне форума Ответить с цитированием
Старый 09.04.2010, 02:30   #7
Web-Gangsta
HTML, JS, CSS, PHP
Форумчанин
 
Аватар для Web-Gangsta
 
Регистрация: 20.04.2009
Сообщений: 233
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
Web-Gangsta
Я написал, с чего лучше начать обучение.
Прошу извинить, представление о том как написать администраторскую, я примерно имею... Ну т.е. поставить там то, что по моему мнению нужно для редактирования и т.п. Мне нужно знать как лучше защитить эту самую администраторскую, как мне избежать дыр, через которые мне могут попортить сайт??? Да, я мог бы поискать в интернете, но мне нужно мнение профессионала, мнение, которое уже проверено и работает. Не хотелось бы мне что бы мне через мою же администраторскую все попортили.
[ Вот здесь должен был быть мой юзербар... Но... ]
Web-Gangsta вне форума Ответить с цитированием
Старый 09.04.2010, 08:54   #8
mrgrudge
Форумчанин
 
Аватар для mrgrudge
 
Регистрация: 20.02.2010
Сообщений: 229
По умолчанию

создаете в mysql таблицу userlist с полями id,pass,user заполняете туда "админов"
делаем отдельный скрипт скажем lock.php со след кодом
PHP код:
<?php
include("bd.php"); //коннектит к мускл бд
if (!isset($_SERVER['PHP_AUTH_USER']))

{
        
Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
        
Header ("HTTP/1.0 401 Unauthorized");
        exit();
}

else {
        if (!
get_magic_quotes_gpc()) {
                
$_SERVER['PHP_AUTH_USER'] = mysql_escape_string($_SERVER['PHP_AUTH_USER']);
                
$_SERVER['PHP_AUTH_PW'] = mysql_escape_string($_SERVER['PHP_AUTH_PW']);
        }

        
$query "SELECT pass FROM userlist WHERE user='".$_SERVER['PHP_AUTH_USER']."'";
        
$lst = @mysql_query($query);

        if (!
$lst)
        {
            
Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
        
Header ("HTTP/1.0 401 Unauthorized");
        exit();
        }

        if (
mysql_num_rows($lst) == 0)
        {
           
Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
           
Header ("HTTP/1.0 401 Unauthorized");
           exit();
        }

        
$pass =  @mysql_fetch_array($lst);
        if (
$_SERVER['PHP_AUTH_PW']!= $pass['pass'])
        {
            
Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
           
Header ("HTTP/1.0 401 Unauthorized");
           exit();
        }


}




?>
и в каждом скрипте который доступентока админам добавляем
PHP код:
include("lock.php"); 
думай как баг, действуй как баг, и ты найдешь баг )
mrgrudge вне форума Ответить с цитированием
Старый 09.04.2010, 08:59   #9
mrgrudge
Форумчанин
 
Аватар для mrgrudge
 
Регистрация: 20.02.2010
Сообщений: 229
По умолчанию

а ваще прально сказали почитайте про сессии и куки, закрыть доступ к страницам можного по разному зависит от того как вы владеете логикой и рнр....ну а коль скоро
Цитата:
Т.к. в серверных языках программирования я довольно таки слаб...
читайте, читайте и читайте, и не стесняемся задавть вопросы тут...но не такие типа "а как написать админку и запоролить ее?" а конкретно по коду...типа "вот я написал такой то скрипт, но он че-то не пашет=\ вот мой код,прошу помочь"....
думай как баг, действуй как баг, и ты найдешь баг )
mrgrudge вне форума Ответить с цитированием
Старый 09.04.2010, 10:23   #10
Web-Gangsta
HTML, JS, CSS, PHP
Форумчанин
 
Аватар для Web-Gangsta
 
Регистрация: 20.04.2009
Сообщений: 233
По умолчанию

Цитата:
Сообщение от mrgrudge Посмотреть сообщение
читайте, читайте и читайте, и не стесняемся задавть вопросы тут...но не такие типа "а как написать админку и запоролить ее?" а конкретно по коду...типа "вот я написал такой то скрипт, но он че-то не пашет=\ вот мой код,прошу помочь"....
Да запоролить ее я бы запоролил, только боюсь что все не так сделал бы... Я постепенно учу PHP но мне негде практиковаться, поэтому порой появляются такие глупые вопросы.

З.Ы. Сори за офф топ...
[ Вот здесь должен был быть мой юзербар... Но... ]
Web-Gangsta вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибки на сайте zabus О форуме и сайтах клуба 11 09.04.2009 08:22
Прокрутка на сайте DALLAS JavaScript, Ajax 1 07.01.2009 09:34
Авторизация на сайте vladimirzzz Работа с сетью в Delphi 7 28.09.2008 21:59
Вопрос о сайте Parcenson О форуме и сайтах клуба 5 13.08.2008 12:54