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 :: Система Авторизация

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
event
Отправлено: 27 Июля, 2011 - 21:42:36
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Добрый вечер !
На днях написал систему регистрации для своего сайта, так как я начинающий мелкий программист прошу у Вас помощи, я не могу написать саму авторизацию пользователя, помогите пожалуйста, собственно мой скрипт регистрации:
Файл самой формы регистрации signup.php
PHP:
скопировать код в буфер обмена
  1. <?
  2. require_once('include/system.php');
  3. head("Реєстрація");
  4. dbconnect();
  5. ?>
  6.  
  7. <div class='title'>Реєстрація новобранців</div><br>    
  8.  
  9. <form action="takesignup.php" method="post">
  10.     <table>
  11.         <tr>
  12.             <td>Логін:</td>
  13.             <td><input type="text" size="30" name="username" /></td>
  14.         </tr>
  15.         <tr>
  16.             <td>Пароль:</td>
  17.             <td><input type="password" size="30" name="password" /></td>
  18.         </tr>
  19.         <tr>
  20.                   <tr>
  21.             <td>Повторіть пароль:</td>
  22.             <td><input type="password" size="30" name="password2" /></td>
  23.         </tr>
  24.         <tr>
  25.                   <tr>
  26.             <td>E-mail:</td>
  27.             <td><input type="text" size="30" name="email" /></td>
  28.         </tr>
  29.         <tr>
  30.             <td></td>
  31.             <td><input type="submit"  value="Зареєструватися негайно !" /></td>
  32.         </tr>
  33.     </table>
  34. </form>
  35.  
  36. <?
  37.  
  38. foot();
  39. ?>



Мой файл обработчика системы регистрации takesignup.php:
PHP:
скопировать код в буфер обмена
  1. <?
  2. require_once('include/system.php');
  3. head("Реєстрація");
  4. dbconnect();
  5.  
  6.  
  7. if ($HTTP_SERVER_VARS["REQUEST_METHOD"] != "POST")
  8. msgerr("Прямий доступ закритий !");
  9.  
  10. $username = $_POST['username'];
  11. $password = $_POST['password'];
  12. $password2 = $_POST['password2'];
  13. $email = $_POST['email'];
  14.  
  15.  
  16.  
  17. $email = trim(strtolower($email));
  18.  
  19. if (empty($username) || empty($password) || empty($email))
  20.         msgerr("Всі поля обов'язкові для заповнення !");
  21.        
  22.         if (strlen($username) > 12)
  23.         msgerr("Вибачте, ім'я користувача є задовгим (максимум 12 символів).");
  24.  
  25.         if ($password == "123456")
  26.         msgerr("Ви ввели пароль \"дурачка\" ".$password." , такі паролі дуже легко підбираються при взломах аккаунтів, будь ласка верніться назад, і поміняйте його на більш складний.");
  27.        
  28.         if ($password != $password2)
  29.         msgerr("Паролі не збігаються! Схоже ви помилилися. Спробуйте ще раз.");
  30.        
  31.         if (strlen($password) < 6)
  32.         msgerr("Вибачте, пароль занадто короткий (мінімум 6 символів).");
  33.        
  34.         if (strlen($password) > 32)
  35.         msgerr("Вибачте, пароль дуже довгий (максимум 32 символа).");
  36.        
  37.         if ($password == $username)
  38.         msgerr("Вибачте, пароль не може бути такий-ж як ім'я користувача.");
  39.        
  40.         if (!validemail($email))
  41.         msgerr( "Це не схоже на реальний E-mail адрес.");
  42.        
  43.         if (!validusername($username))
  44.         msgerr( "Невірне ім'я користувача.");
  45.        
  46.         list(, $domain) = explode('@', $email);
  47. if (!mail_possible($email))
  48.         msgerr( 'Пошти в такому домені бути не може ('.htmlspecialchars_uni($domain).')');
  49.        
  50.        
  51. $md5password = md5($password);
  52. $ret = mysql_query("INSERT INTO users (username, password, email) VALUES ('$username','$md5password', '$email')");
  53.  
  54.  
  55. if (!$ret) {
  56.         if (mysql_errno() == 1062)
  57.                 msgerr( "Пользователь $username уже зарегистрирован!");
  58.         msgerr( "Невідома помилка. Відповідь сервера MySQL: ".htmlspecialchars(mysql_error()));
  59. }
  60.  
  61. if ($ret)
  62.         success("Успішно","Дякуємо за реєїстрацію на ".$SITENAME."! Тепер ви можете <a href='login.php'> увійти </ a> у систему.");
  63.  
  64. foot();
  65. ?>


Помогите написать саму авторизацию, вот я составил саму форму входа login.php
PHP:
скопировать код в буфер обмена
  1. <?
  2. require_once('include/system.php');
  3. head("Авторизація");
  4. dbconnect();
  5. ?>
  6.  
  7. <div class='title'>Назвіться, будь ласка</div><br>     
  8.  
  9. <form action="takelogin.php" method="post">
  10.     <table>
  11.         <tr>
  12.             <td>Логін:</td>
  13.             <td><input type="text" size="30" name="username" /></td>
  14.         </tr>
  15.         <tr>
  16.             <td>Пароль:</td>
  17.             <td><input type="password" size="30" name="password" /></td>
  18.         </tr>
  19.         <tr>
  20.                   <tr>
  21.             <td></td>
  22.             <td><input type="submit"  value="Пустіть мене негайно !" /></td>
  23.         </tr>
  24.     </table>
  25. </form>
  26.  
  27. <?
  28.  
  29. foot();
  30. ?>


Вся система должна быть на кукисах без сессий, кто напишет читабельный хороший код возможно получит вознаграждение (WMZ).
 
 Top
fullzero
Отправлено: 28 Июля, 2011 - 08:32:04
Post Id



Гость


Покинул форум
Сообщений всего: 120
Дата рег-ции: Март 2011  


Помог: 0 раз(а)




 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB