<?php
include("../blocks/bd.php");
if(!isset($_SESSION['enter']))
{
if (empty($_SERVER['PHP_AUTH_USER']))
{
header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
header ("HTTP/1.0 401 Unauthorized");
exit();
}
else
{
$res = mysql_query("SELECT COUNT(*) AS cnt FROM userlist
WHERE user='". mysql_real_escape_string($_SERVER['PHP_AUTH_USER']) ."'
AND pass='".md5($_SERVER['PHP_AUTH_PW'])."'"
);
if (mysql_result($res, 0) == 0)
{
header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
header ("HTTP/1.0 401 Unauthorized");
exit();
}
$_SESSION['enter'] = true;
}
}
?>
Проблема в том что он работает только на локальном хосте, а на удаленном после ввода данных, страница просто перезагружается и снова просит вводить данные. Ошибок никаких не выдает.
Помогите пожалуйста разобраться. Заранее благодарен!
Спустя 8 минут (7.08.2012 - 16:56) Игорь_Vasinsky написал(а):
Возможер включены магические кавычки у хостера и данные 2 раза экранируются.
Отлючи так в .htaccess
и вообще - покажи htaccess - там возможно путь к файлу с паролями не верно указан.
Отлючи так в .htaccess
php_flag magic_quotes_gpc Off
и вообще - покажи htaccess - там возможно путь к файлу с паролями не верно указан.
Спустя 40 секунд (7.08.2012 - 16:57) inpost написал(а):
Попов, удаляй
Сделай доступ по сессии.
Сделай доступ по сессии.
Спустя 22 минуты, 8 секунд (7.08.2012 - 17:19) Alexander131 написал(а):
Игорь_Vasinsky,
я тоже так думал, кавычки отключал но не помогло((
я тоже так думал, кавычки отключал но не помогло((
Спустя 53 секунды (7.08.2012 - 17:20) Alexander131 написал(а):
inpost ,
это не попов)) его я уже давно выкинул))
это не попов)) его я уже давно выкинул))
Спустя 15 минут, 15 секунд (7.08.2012 - 17:35) johniek_comp написал(а):
Alexander131
include("../blocks/bd.php");
это поповская строка, только он мог назвать database "bd"
include("../blocks/bd.php");
это поповская строка, только он мог назвать database "bd"
Спустя 1 минута, 9 секунд (7.08.2012 - 17:36) Игорь_Vasinsky написал(а):
Цитата |
и вообще - покажи htaccess - там возможно путь к файлу с паролями не верно указан. |
Спустя 2 минуты, 42 секунды (7.08.2012 - 17:39) inpost написал(а):
Да ладно, это он и есть: http://irbis-team.com/15/10/3
Спустя 4 минуты, 22 секунды (7.08.2012 - 17:43) Alexander131 написал(а):
У меня в этом файле почти нечего нету.
Спустя 2 минуты, 33 секунды (7.08.2012 - 17:46) Alexander131 написал(а):
этот код я взял здесь на форуме http://phpforum.ru/index.php?showtopic=26247
А строчку include сам прописал. Если не трудно напишите как правильно подключится к бд.
А строчку include сам прописал. Если не трудно напишите как правильно подключится к бд.
Спустя 6 минут, 8 секунд (7.08.2012 - 17:52) Jix написал(а):
Цитата (Alexander131 @ 7.08.2012 - 17:48) |
$res = mysql_query("SELECT COUNT(*) AS cnt FROM userlist WHERE user='". mysql_real_escape_string($_SERVER['PHP_AUTH_USER']) ."' AND pass='".md5($_SERVER['PHP_AUTH_PW'])."'" ); |
У тебя обратная связь на случай ошибки, не стоит после запроса в базу данных. Возможно там где-то ошибка.
Спустя 16 минут, 17 секунд (7.08.2012 - 18:08) Alexander131 написал(а):
Jix,
сделал проверку, нет ошибки.
сделал проверку, нет ошибки.
Спустя 10 минут, 38 секунд (7.08.2012 - 18:19) alex12060 написал(а):
Во первых, user - зарегестрированное в мускуле имя.
Во вторых - сделай в конце or die(mysql_error())
В третьих, у тебя работает ли сессия? Протестируй
В четвертых - проверь поля $_SERVER[], что в них есть
Во вторых - сделай в конце or die(mysql_error())
В третьих, у тебя работает ли сессия? Протестируй
В четвертых - проверь поля $_SERVER[], что в них есть
Спустя 13 минут, 14 секунд (7.08.2012 - 18:32) Jix написал(а):
Alexander131 в теме http://phpforum.ru/index.php?showtopic=26247&st=15
На второй странице от автора выше описаного тобой кода, написана причина по которой не работает этот код. В следующий раз будь внимательей.)
На второй странице от автора выше описаного тобой кода, написана причина по которой не работает этот код. В следующий раз будь внимательей.)
Спустя 12 минут, 52 секунды (7.08.2012 - 18:45) Alexander131 написал(а):
Я так понял на моем хосте работать не будет(( Может можете подсказать как защитить админку?
Спустя 33 минуты, 49 секунд (7.08.2012 - 19:19) Jix написал(а):
Alexander131 на эту тему много всякого материала написано, защитить можно с помощью сессий! Это легко в интернете найти! В следующий раз будь самостоятельней.)
PHP Tutorials: Register & Login: User login (Part 1)
PHP Tutorials: Register & Login: User login (Part 2)
PHP Tutorials: Register & Login: User login (Part 3)
PHP Tutorials: Register & Login: User login (Part 1)
PHP Tutorials: Register & Login: User login (Part 2)
PHP Tutorials: Register & Login: User login (Part 3)
Спустя 12 минут, 10 секунд (7.08.2012 - 19:31) Alexander131 написал(а):
Jix,
я спрашиваю не из-за того что не могу найти материал, я просто не хочу наткнутся на какое-нибудьдерьмо, так как я не сильно силен в программировании.
За информацию спасибо!
я спрашиваю не из-за того что не могу найти материал, я просто не хочу наткнутся на какое-нибудь
За информацию спасибо!
Спустя 39 минут, 3 секунды (7.08.2012 - 20:10) inpost написал(а):
Стандартную форму регистрации и авторизации делаешь. Отдельным полем помечаешь тип аккаунта, и если у него тип "админ", значит есть доступ в админ.раздел. По дефолту при регистрации тип даётся: "стандартный пользователь".
Спустя 12 минут (7.08.2012 - 20:22) Guest написал(а):
Alexander131
Да этогодерьма везде хватает, даже видео в трех частях, которое выше по реализации дерьмо. Почти везде одно дерьмо толкают. Там в видео не стоят фильтры и прочее, но самое главное поглядеть как сессия работает. Обычно чтобы осознать приходится мне лично читать по 47+ статей, если столько найдется, смотреть обучающие материалы пачками, а потом через дня два-три, наступает озарение и становится понятно как можно это использовать! Так что! Чтоб тебя осенило с этой админкой и сессиями!
Да этого
Спустя 1 час, 4 секунды (7.08.2012 - 21:22) Alexander131 написал(а):
Guest
Спасибо)))
Спасибо)))