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
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » авторизация на php

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

1. php_maker - 22 Марта, 2007 - 16:17:26 - перейти к сообщению
Срочно нужен код авторизации, когда пользователь сверяет личные данные (логин,пароль) по БД mysql.
2. valenok - 22 Марта, 2007 - 17:01:55 - перейти к сообщению
Держи.
Сам разбирайся или пиши тут что не понятного.

Кстати,
А срочно тебе или нет, не думаю что стоит писать.
Резко пропадает желание отдавать.
Возникает ощущение что я на тебя работаю и срочно тебе подавай.
3. valenok - 23 Марта, 2007 - 08:26:45 - перейти к сообщению
Забыл:
Структура таблица 'unauth' для тех кто сам ещё не написал

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. CREATE TABLE `unauth` (
  4.   `username` varchar(20) NOT NULL default '',
  5.   `pass` varchar(20) NOT NULL default '',
  6.   `ip` varchar(15) default NULL,
  7.   `logintime` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
  8. ) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
  9.  
4. php_maker - 23 Марта, 2007 - 15:46:48 - перейти к сообщению
Возможен такой вариант?:

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. if (isset($reg))
  4.     {
  5.                  
  6.       if (empty ($login)) $message = "Заполните поле ИМЯ!";
  7.       if (empty ($pass)) $message = "Заполните поле ПАРОЛЬ!";
  8.       if (isset ($login))      $login = cut ($login);
  9.       $pr = mysql_query ("SELECT login FROM $users WHERE login = '$login'");
  10.       if (mysql_fetch_array ($pr)!=0) $message = "Пользователь с таким именем существует!";
  11.  
  12.       if ($message == "")
  13.                 {
  14.       $pass = cut ($pass);
  15.       $mail = cut ($mail);
  16.  
  17.  
  18.           mysql_query ("INSERT INTO $users (login, pass, mail)
  19.                                    VALUES ('$login', '$pass', '$mail')
  20.          ");
  21.  
5. valenok - 23 Марта, 2007 - 18:14:31 - перейти к сообщению
А вы пробовали и не работает?
6. php_maker - 24 Марта, 2007 - 10:18:21 - перейти к сообщению
valenok пишет:
А вы пробовали и не работает?


Все работает как надо.
Вообще, насколько безопасно хранить пароли в БД, как сделать чтобы они не были доступны посторонним.





7. valenok - 24 Марта, 2007 - 11:00:08 - перейти к сообщению
Во первых зашифруйте пароли которые вы вносите в бд
каким нибудь необратимым алгоритмом шифрования вроде:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $pass = 'Sasha';
  4. $pass = str_rot13(md5($pass{0}.'Фигу'.$pass));
  5.  


Во вторых - если у вас базу не положат с сервером, и не проведут какую нибудь SQL иньекцию, то ничего никому доступно не будет.
Как от сего защититься можно на найти на php.net в разделе документация -> безопасность.

 

Powered by ExBB FM 1.0 RC1