Question

Написал регистрацию, когда пароль проверяет даже если всё правильно написано выдаёт ошибку что пароль должен состоять из латинских букв и любых цифр.

Что делать?

Спойлер

           ShowRegistration(playerid);
                     return SCM(playerid, COLOR_RED, "[Ошибка] {FFFFFF}Введите пароль в поле ниже и нажмите \"Далее\"");
               }
               if(strlen(inputtext) < 8 || strlen(inputtext) > 32)
               {
                 ShowRegistration(playerid);
                 return SCM(playerid, COLOR_RED, "[Ошибка] {FFFFFF}Пароль не соответствует длинне");
               }
               new regex:rg_passcheck = regex_new("^[a-zA-Z0-9{1,}]$");
               if(regex_check(inputtext, rg_passcheck))
               {
                 strmid(player_info[playerid][PASSWORD], inputtext, 0, strlen(inputtext), 32);
                 SPD(playerid, DLG_REGMAIL, DIALOG_STYLE_INPUT, "{efff00}Регистрация{FFFFFF} • Ввод Email",
                     "{FFFFFF}Введите ваш настоящий Email\n\
                     Введите его в поле ниже и нажмите \"Далее\"\n\
                     Если вы потеряете досту к аккаунту, тогда вы сможете востановить его через Email",
                 "Далее", "");
               }
               else
               {
                  ShowRegistration(playerid);
                  return SCM(playerid, COLOR_RED, "[Ошибка] {FFFFFF}Пароль должен состоять из латинских букв и любых цифр");
               }
            }

 

 

Edited by odosenok

Заметка от Cawfee , создано

3.2. Код больше 10 строк необходимо брать в теги "Код" и "Спойлер". Как это сделать рассказано в разделе "FAQ".

Устное предупреждение.

Share this post


Link to post

4 answers to this question

  • 0

Строчку

new regex:rg_passcheck = regex_new("^[a-zA-Z0-9{1,}]$");

Замените на

new regex:rg_passcheck = regex_new("^[a-zA-Z0-9]{1,}$");

 

Share this post


Link to post
  • 0

А еще лучше regex для таких дел не использовать

Share this post


Link to post
  • 0

@stalkerSAMP почему же? Как по мне, так гораздо лучше использовать regex, указав допустимые значения, чем использовать циклы и весь этот мусор.

Share this post


Link to post
  • 0

@SCRIPTMAN ну как сказать, особенно, когда видишь вот такую страшилку: 

^(?:(?:31(\/|-|\.)(?:0?[13578]|1[02]))\1|(?:(?:29|30)(\/|-|\.)(?:0?[1,3-9]|1[0-2])\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:29(\/|-|\.)0?2\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:0?[1-9]|1\d|2[0-8])(\/|-|\.)(?:(?:0?[1-9])|(?:1[0-2]))\4(?:(?:1[6-9]|[2-9]\d)?\d{2})$ 

А это всего лишь проверка на формат даты DD/MM/YYYY

Share this post


Link to post
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • dfhfyyjftyfthtj
      By dfhfyyjftyfthtj
      Приветствую, на днях решил опробовать новый хостинг (ru hoster), долго мучился с запуском мода, который прекрасно запускался на другом хостинге. 
      Появилась новая проблема: сервер крашит в рандомный момент по непонятной причине. Подскажите, пожалуйста, в чем может быть проблема? пробовал и отключать crashdetect, но он все равно крашится и автоматически перезапускается хостингом после краша.
      Логи: