Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Регистрация - проверка полей
Покинул форум
Сообщений всего: 120
Дата рег-ции: Март 2011
Помог: 0 раз(а)
Всем привет. Пишу регистрацию на файлах столкнулся с некоторыми трудностями. Как сделать проверку полей на кол-во символов, вводимые символы, на пустые поля, и чем шифровать пароль? Ну и далее надо как то авторизоваться по этому файлу
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
а зачем хэш логина? (Добавление)
ясно)) (Добавление)
я так понял вы создаете в папке users папку по логину и в ней файл индекс?
зачем так сложно? (Добавление)
в папке users делаете файл login.txt
в него пишите хэш пароля
и все
при авторизации открываете файл по логину и сравниваете хэши
fullzero
Отправлено: 16 Августа, 2011 - 07:51:04
Гость
Покинул форум
Сообщений всего: 120
Дата рег-ции: Март 2011
Помог: 0 раз(а)
LIME это первоначальная версия. Далее что нить придумаю, не хочу хранить такие важные данные в txt файлах, слишком рисковано. Пока ничего безопаснее чем в php не придумал
LIME
Отправлено: 16 Августа, 2011 - 07:54:10
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
fullzero а php у вас где лежит?
чем безопаснее?
насмешили))
какраз у вас дыра в том что пароль в явном виде хранится
ерундой маетесь честное слово )) (Добавление)
можете прописать в htaccess в папке users запрет на допуск отовсюду кроме локалхоста
fullzero
Отправлено: 16 Августа, 2011 - 08:38:33
Гость
Покинул форум
Сообщений всего: 120
Дата рег-ции: Март 2011
Помог: 0 раз(а)
LIME напиши пример сравнения. Какой нить простой.
illy
Отправлено: 16 Августа, 2011 - 09:04:02
Участник
Покинул форум
Сообщений всего: 1117
Дата рег-ции: Июль 2011 Откуда: от верблюда)
Помог: 28 раз(а)
если в php пароли в явном виде то сделай первую строку <?php exit; ?>
чтобы не могли прочитать содержимое файла
и пароли лучше шифровать.
если зарегился - то в куки его логин и пароль чтоб каждый раз не вводить
----- Всё гениальное - просто
И ещё проще, если ты - индиго
fullzero
Отправлено: 16 Августа, 2011 - 09:24:26
Гость
Покинул форум
Сообщений всего: 120
Дата рег-ции: Март 2011
if(empty($login)){echo"<b><p>Вы не указали логин</p></b>";}
elseif(!preg_match("/^[a-zA-Z0-9]{4,10}$/",$login)){echo"<b><p>Логин должен состоять только из латинских букв и содержать не меньге 4 символов и не больше 10</p></b>";}
elseif(empty($pass)){echo"<b><p>Вы не ввели пароль</p></b>";}
elseif(!preg_match("/^[a-zA-Z0-9]{4,20}$/",$pass)){echo"<b><p>Пароль должен состоять только из латинских букв и содержать не меньге 4 символов и не больше 20</p></b>";}
elseif(empty($pass2)){echo"<b><p>Вы не указали повторный пароль</p></b>";}
elseif(!preg_match("/^[a-zA-Z0-9]{4,20}$/",$pass2)){echo"<b><p>Повторный пароль должен состоять только из латинских букв и содержать не меньге 4 символов и не больше 20</p></b>";}
elseif($pass2!=$pass){echo"<b><p>Пароли не совпадают</p></b>";}
elseif(empty($email)){echo"<b><p>Вы не ввели емеил</p></b>";}
elseif(empty($sex)){echo"<b><p>Вы не указали ваш пол</p></b>";}
elseif(mysql_num_rows(mysql_query('select 1 from `bg_user` where `user_id` = \''.$_POST['reg_name'].'\''))){echo"<b><p>Акаунт уже зарегистрирован</p></b>";}
elseif($login&&$pass&&$pass2&&$email&&$sex){
mysql_query("INSERT INTO `bg_user` (`user_id`, `passwd`, `email`, `sex`) VALUES ('$login', '$pass', '$email', '$sex')") or die("Значения не занесены");
echo"<b><p>Вы успешно зарегестрировались ваш логин $login ваш емеил $email запомните их они вам пригодятся</p></b>";
}
}
?>
----- Vixa
PATCH
Отправлено: 20 Августа, 2011 - 16:19:39
Частый посетитель
Покинул форум
Сообщений всего: 924
Дата рег-ции: Апр. 2011
Помог: 22 раз(а)
если удастся взломщику залить shell файл то вам даже хранение в php не поможет)) vixa прочитай описании функции stripslashes в место него надо
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.