Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];

Вниз

Авторизация php   Найти похожие ветки 

 
Nic ©   (2006-07-29 19:17) [0]

Мастера, помогите написать простенькую авторизацию на php.
Если пароль неверный то чтобы сообщало об этом, эсли верный, чтобы на другую страницу переходило. Уже гуглил, пытался сам написать - ничего не получается :( То ошибки вылазют, то не работает :(


 
Nic ©   (2006-07-29 19:19) [1]

Нашёл вот такое:
<?
if(!isset($password)) {$password="";}
$ok_pass="здесь пишется пароль";
if($password!=$ok_pass) {echo "<center>Введите пароль:<br>
<form action=admin.php method=post>
<input type=password size=20 name=password><input type=submit value=Понеслась!>
</form>
</center>";
exit; }
?>
Но оно почему-то всегда переходит на admin.php, в не зависимочти от введённого пароля. Help..


 
SPeller ©   (2006-07-29 19:20) [2]

Простейшую книгу по пхп в зубы


 
Nic ©   (2006-07-29 19:24) [3]


> SPeller ©   (29.07.06 19:20) [2]

Простейшая книга по пхп в зубах уже, и мне от неё плохо уже :( За ночь всю прочёл, вроде в общем разобрался как да что в принципе работет, но как реализовать сабж не пойму.


 
VirEx ©   (2006-07-29 19:29) [4]

была где-то недавно на "Потрепаться" тема...

а пароль ты как получаешь? пробуй так:
$password=$_POST["password"];


 
SPeller ©   (2006-07-29 19:30) [5]

Пример доисторический, для register_globals=on

и мне от неё плохо уже
И что, про register_globals ни слова?


 
Nic ©   (2006-07-29 19:32) [6]


> SPeller ©   (29.07.06 19:30) [5]

Не припомню. Книга совсем для новичков. То есть надо у сервака этот переключатель включить или команда какая?


 
antonn ©   (2006-07-29 19:33) [7]

Nic ©   (29.07.06 19:17)
зайди на woweb.ru, скачай там скрыпты какого нить форума, и посмотри (я там когда то скачивал Ron-Forum, там админ панель с паролем, по примеру для всего сайта сделал необязательную регистрацию)


 
grisme ©   (2006-07-29 19:36) [8]

допустим, форма ввода пароля передает параметр password своей же странице, методом POST...

в самом начале, ты должен взять этот параметр так:
$password=$_POST["password"];
потом сравнить:
if (strval($password)==<нужный пароль>)
{
   Header("Location:URL");
} else
{
  echo "<font color=red>Неверный пароль</font>";
}
примерно так...только вопрос, зачем переадресуешься если верен пароль? ты не боишься, что злоумышленник просто сразу вызовет эту страницу и все?)


 
Nic ©   (2006-07-29 19:39) [9]

Нужна самая простейшая защита, я бы сказал, формальная. Зав кафедрой сказал к понедельнику представить сабж + структуру электронной библиотеки.


 
antonn ©   (2006-07-29 19:46) [10]

if(isset($_POST["submit"])){
if($_POST["name"]==""){ пустой ник, можно ругнуться }
if($_POST["pswrd"]==""){ пустой пароль, можно ругнуться }
// я еще так иногда делаю, чтоб пароль не хранить в чистом виде - $pass_md5=md5($_POST["pswrd"]);
$name=$_POST["name"];
if ((strcasecmp($name,настоящий_ник)==0)and($pass_md5==настоящий_пароль)){
@header("Location: ".$pblink); //тут уж страницу сам указывай, у меня она передается
//угадал пароль
}else{
@header("Location: ".$pblink);
//не угадал пароль
}

думаю понятно, что в хтмл нужно иметь примерно следующее:
<form action="какой_шкрипт_вызывать" method="post">
<input type="text" name="name">
<input type="password" name="pswrd" >
<input type="submit" name="submit" value="Нажималка"></TD></TR>
</form>


 
Nic ©   (2006-07-29 19:49) [11]


> antonn ©   (29.07.06 19:46) [10]

Спасибо огромное! Сейчас буду пробовать.


 
antonn ©   (2006-07-29 19:50) [12]

grisme ©   (29.07.06 19:36) [8]
примерно так...только вопрос, зачем переадресуешься если верен пароль? ты не боишься, что злоумышленник просто сразу вызовет эту страницу и все?)

можно в куки загнать хеши пароля и ника, отрефрешиться на основную, а при ее "построении" уже проверять эти хеши.


 
grisme ©   (2006-07-29 20:21) [13]

antonn ©   (29.07.06 19:50) [12]
хых, да я знаю...:0) автор просил простейший вариант..


 
Nic ©   (2006-07-29 21:06) [14]

Поэкспериментировал-поэкспериментировал и получилось!! Спасибо огромное! Оказалось достаточно просто. Только вот внимательным надо быть, малейшая опечатка и ничего не работает... Теперь можно спать, наконец, лечь.


 
vidiv ©   (2006-07-30 17:51) [15]

читай мануал от PHP, там все есть :)) даже пример



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.039 c
9-1133327946
Da Stranger
2005-11-30 08:19
2006.08.27
Про стрельбу


6-1144012942
MVP
2006-04-03 01:22
2006.08.27
Подмена картинок на форуме


1-1152962597
zvizda
2006-07-15 15:23
2006.08.27
время


1-1152862745
Calibr2
2006-07-14 11:39
2006.08.27
Как добавить таймер на форму в VBA редакторе


15-1146670466
es
2006-05-03 19:34
2006.08.27
Конвертер аудио





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский