| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Админка |
| Автор: Onis 18.6.2005, 14:55 |
| Здрасти Народ, не подскажите как админку правильно заблокировать для посторонних, я пытался сделать напролом, сравнивая введенный пароль с его хэш-кодом но этот способ постоянно глючит. |
| Автор: PARROT 18.6.2005, 15:07 | ||
|
| Автор: Onis 18.6.2005, 15:11 |
| Коротко и неясно Можно поподробнее чуток, я ж еще новичок. |
| Автор: PARROT 18.6.2005, 15:31 |
| При входе, если все условия верны, ставь куки. При выходе куки удаляй. |
| Автор: Onis 18.6.2005, 15:44 |
| Как я понял переменные $login и $pass вводтся через формы? Может у кого-то есть ссылочка на примеры использования кук а то я о них только второй раз слышу |
| Автор: PARROT 18.6.2005, 15:46 |
| name формы, это имена наших переменных, на которые при проверки условия, ставятся куки. Если конечно все верно. Вот ссылка на русском http://php.rinet.ru/manual/ru/features.cookies.php |
| Автор: Onis 18.6.2005, 16:21 |
| А можно сделать так чтоб куки удалялись когда закрываешь страничку? |
| Автор: Bikutoru 18.6.2005, 16:36 | ||
| Нет. Cookie будут храниться пока не истечет срок их действия, или пока они не будут удалены самим пользователем... Если обязательно нужно удуаление с закрытием окна, то имеет смысл использовать переменные $_SERVER["PHP_AUTH_USER"] и $_SERVER["PHP_AUTH_PW"]... Пример с php.net:
Только есть такая особенность: если вводишь неправильный логин/пароль, то нужно закрывать окно и открывать новое, причем через Ctrl+N (в IE) не получится - окно, порожденное от данного, использует ту же комбинацию логин/пароль... |
| Автор: Onis 18.6.2005, 16:49 | ||
Ну я примерно так делаю:
Этот код я для теста сделал, у меня появляется ошибка в строке удаления куков, пишет что мол я уже послал заголовки. Или я неправильно строю алгоритм? |
| Автор: Рыжий 18.6.2005, 16:54 | ||
| Обьясняю понятно: Хранишь пароли и логины админов в Базе данных, проверяешь правильный ввод с обыкновенной формы, вот пример:
После этого будешь иметь 2 переменные $_POST['name'] - логин и $_POST['pass'] - пароль. Далее регистрируем кукисы - эти 2 переменные как раз подойдут. Соответственно нужно начать сессию - один из лучших вариантов, сессию уже никто не сможет подделать и если ты будешь админить сайт - вместо тебя никто уже не зайдет После того как ты закроешь окно браузера - сессия автоматом удалится. Вроде все, будут вопросы спрашивай |
| Автор: PARROT 18.6.2005, 16:56 | ||
И больше ругаться не будут! Гарантия 100 пр... А сессии для начинающих не сложны...? Использовать или не использовать глобалку дело каждого, но лучше использовать! Потому как есть гарантия, что работать будет везде! И еще пароль лучше хранить в закрытом виде, в функции md5() + чтобы не украли, к паролю стоит привязать какое-нибудь слово типа "Попка дурак". Тоесть слово, которое никто незнает. Тогда гарантия, что сопрут, растворяется. |
| Автор: Onis 18.6.2005, 17:49 |
| Спасибо всем, вроде работает. И извините если достал |
| Автор: PARROT 18.6.2005, 17:55 |
| Не за што... |
| Автор: Mal Hack 19.6.2005, 09:23 |
| В FAQ уже есть, между прочим ;) http://forum.vingrad.ru/index.php?act=module&module=vingradfaq&target=main_panel&article=2849 |