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
Форумы портала PHP.SU :: Версия для печати :: Проблема в регистрации
Форумы портала PHP.SU » » Вопросы новичков » Проблема в регистрации

Страниц (1): [1]
 

1. Ter - 20 Августа, 2011 - 20:18:24 - перейти к сообщению
Здравствуйте, прочитал гайд по регистрации http://www.php[dot]ru/forum/viewtopi[dot][dot][dot]+%F4%E0%E9%EB%E5 , сама регистрация проходит успешно и пользователь регистрируется. Проблема в следующем: у меня учётные записи с данными хранятся в отдельных папках, и для каждого пользователя нужен свой вход(а в этой регистрации он общий). Я решил использовать внешний файл регистрации как проверку(чтобы например не было повторение пользователей), а в каждую папку пользователя добавить по ещё одному файлу users.php(файл с данными пользователей) с только ОДНОЙ записью его логина/пароля, чтобы никто больше не мог зайти к нему. Проблема состоит в том, что я ну никак не могу добавить файл в папку с пользователем с лично его логином/паролем... Может есть кто в этом разбирается?
2. PATCH - 20 Августа, 2011 - 20:36:27 - перейти к сообщению
че та вас приперло плин все использовать файловую систему для авторизации) думаете это сильно защити от взломщика?) даже не надейтесь)) вообще как вариант при регистрации создавать папку с именем логина и в нем создавать user.php что бы избежать повторений можно использовать функцию
т.е сравниваем вводимый логин с папками в дериктории допустим logout если такой нету создаем папку с именем логина и в этой папке создаем файл user.php где содержится логин и пароль)
3. Ter - 20 Августа, 2011 - 20:50:57 - перейти к сообщению
PATCH пишет:
че та вас приперло плин все использовать файловую систему для авторизации) думаете это сильно защити от взломщика?) даже не надейтесь)) вообще как вариант при регистрации создавать папку с именем логина и в нем создавать user.php что бы избежать повторений можно использовать функцию
т.е сравниваем вводимый логин с папками в дериктории допустим logout если такой нету создаем папку с именем логина и в этой папке создаем файл user.php где содержится логин и пароль)

спасибо, но в файлах я храню данные, чтобы не использовать базы данных(например, если хостинг их не предоставляет или хранение данных дороговато для меня). что касается вашего ответа насчёт папок, то так и есть, и так я всё и хочу сделать ;) создаётся папка с именем логина, и данные в ней и файл user.php, вот только он не создаётся, вот и прошу помощи...
4. PATCH - 20 Августа, 2011 - 21:07:02 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $login = $_POST['login'];
  2. $pass = $_POST['pass'];
  3.  
  4. $path = 'logout/'
  5. $dir = is_dir($path.$login)
  6. if($dir== TRUE)
  7. {
  8.  $code_text = $login.$pass
  9.         $writes = fopen($path.$login"/user.php","w+");
  10.         if($writes  == true)
  11.         {
  12.                 fwrite($writes, $code_text);
  13.                 $close = fclose($writes);      
  14.                 if($close == true) {echo "Вы зарегестрированы";}
  15.         }
  16. }


будет что то вроде такого ток я не уверен насчет чтоя правильно записываЮ))
5. Ter - 20 Августа, 2011 - 21:20:45 - перейти к сообщению
PATCH, посмотрите код на форуме том, там вроде запись ведётся зашифрованная, может быть убрать это шифрование?
6. Ter - 23 Августа, 2011 - 10:02:55 - перейти к сообщению
Проблема решена
7. dimka3210 - 23 Августа, 2011 - 10:28:09 - перейти к сообщению
Не забываем про права, для записи chmod($username, 777);
создаём файл, записывем в него и опять права на 755.

 

Powered by ExBB FM 1.0 RC1