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 » Напишите за меня, пожалуйста » Скрипт регистрации на PHP

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

1. alex.pro100 - 19 Февраля, 2017 - 20:43:08 - перейти к сообщению
Друзья программисты, у меня вот такая проблема: Я нашел в интернете скрипт регистрации и авторизации php - вот он:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. include_once "cabinet/database.php";
  3. header ("content-type: text/html; charset=utf-8");
  4. if (isset ($_SESSION['id'])) {
  5.         header ("location: /cabinet/index.php");
  6. }
  7. if (isset ($_POST['reg_ok'])) {
  8.     if ($_POST['password'] != $_POST['password_2']) {
  9.                 $_SESSION['msg'] = "Пароли не совпали!";
  10.         }
  11.     else {
  12.         if ($_POST['name'] == '' || $_POST['mail'] == '' || $_POST['login'] == '' || $_POST['password'] == '') {
  13.             $_SESSION['msg'] = "Поля отмеченные * обязательны для заполнения!";
  14.                 }
  15.         else {
  16.             $mail = $_POST['mail'];
  17.             $login = $_POST['login'];
  18.             $sql_res = mysql_query ("SELECT id FROM cabinets WHERE login='$login' OR mail='$mail'") or die (mysql_error ());
  19.             if (mysql_num_rows ($sql_res) != 0) {
  20.                 $_SESSION['msg'] = "Пользователь с таким логином и/или почтой уже существует!";
  21.                         }
  22.             else {
  23.                 $name = $_POST['name'];
  24.                 $mail = $_POST['mail'];
  25.                 $login = $_POST['login'];
  26.                 $password = $_POST['password'];
  27.                 $ip = $_SERVER['REMOTE_ADDR'];
  28.                 mysql_query ("INSERT INTO cabinets SET name='$name', mail='$mail', login='$login', password='$password', ip='$ip'");
  29.  
  30.                 $id = mysql_insert_id ();
  31.                 $sql_res = mysql_query ("SELECT * FROM cabinets WHERE id=$id");
  32.                 $arr = mysql_fetch_assoc ($sql_res);                   
  33.                 $_SESSION['id'] = $arr['id'];
  34.                 $id = $_SESSION['id'];
  35.                 $usr = mysql_fetch_assoc (mysql_query ("SELECT * FROM cabinets WHERE id=$id"));
  36.                 header ("location: /cabinets/index.php");
  37.                                 exit;
  38.                         }
  39.                 }
  40.         }
  41. }
  42. ?>


И вот я хочу установить в нем проверку поля логин на количество введенных символов и установить минимальное количество для регистрации. Я перепробовал несколько вариантов и в итоге ничего. Помогите кто знает!
2. teleoperator27 - 19 Февраля, 2017 - 20:53:42 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. $login = vasya;
  3.  
  4. $count = strlen($login) > 5;  //вернет true если $login больше 5
  5.  
  6.  if($count){
  7.         echo 'good';
  8.  }else{
  9.         echo 'bad';
  10.  }
  11.  


Вернет "bad"
3. Строитель - 19 Февраля, 2017 - 21:05:56 - перейти к сообщению
alex.pro100, нужно добавить ещё одну ветку в условие
Спойлер (Отобразить)
4. alex.pro100 - 19 Февраля, 2017 - 22:09:08 - перейти к сообщению
Друзья, спасибо за помощь!=))
И еще такой вопрос относительно этой темы:

PHP:
скопировать код в буфер обмена
  1. elseif (strlen($_POST['login']) <= 3) {
  2.             $_SESSION['msg'] = "Логин не может состоять из 3-х букв!";
  3.         }


Вот такой методикой, то есть через elseif можно добавлять проверку для всех полей через регулярные выражения?
5. Строитель - 19 Февраля, 2017 - 22:57:19 - перейти к сообщению
alex.pro100 пишет:
через elseif можно добавлять проверку для всех полей через регулярные выражения?
Да.
6. alex.pro100 - 19 Февраля, 2017 - 22:58:55 - перейти к сообщению
Еще раз спасибо.=))

 

Powered by ExBB FM 1.0 RC1