Question

Приветствую дорогие коллеги. Намучался, хочу решить одну проблему, делаю проверку на правильность введенной почты,
и не могу правильно настроить это дело в диалоге. Кто поможет, буду очень рад. Внизу прикрепил скрипт.

Внутри спойлера код.

Спойлер

switch(dialogid)
    {
        case DLG_MAIL:
        {
            if(response)
            {
                if(!strlen(inputtext)) // Настроить данную порядочность.
                {

                    SCM(playerid, COLOR_BLUE, "Введите почту в поле ниже!");
                    AccountRegMail(playerid);
                }
                else
                {
                    new regex:rg_passwordcheck = regex_new("[a-zA-Z0-9_\\.]+@([a-zA-Z0-9\\-]+\\.)+[a-zA-Z]{2,4}");
                    if(regex_check(inputtext, rg_passwordcheck))
                    CreateNewAccount(playerid); 
                }   
                else // Проблема здесь. Пишет что возвращает zero.
                {
                    SCM(playerid, COLOR_BLUE, "Вы неверно ввели почту!");
                    AccountRegMail(playerid);
                }
            }
        }

 

 

Спойлер

C:\Users\cocolahvili\OneDrive\Documents\Server\gamemodes\sheikhmode.pwn(324) : error 029: invalid expression, assumed zero

 

Share this post


Link to post
Share on other sites

4 answers to this question

  • 1
    switch(dialogid)
    {
        case DLG_MAIL:
        {
            if(!strlen(inputtext) || !response) // Настроить данную порядочность.
            {

                SCM(playerid, COLOR_BLUE, "Введите почту в поле ниже!");
                AccountRegMail(playerid);
                return 1;
            }

            new regex:rg_emailcheck = regex_new("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?");
            if(!regex_check(inputtext, rg_emailcheck))
            {
                SCM(playerid, COLOR_BLUE, "Вы неверно ввели почту!");
                AccountRegMail(playerid);
                return 1;
            }
                    
            CreateNewAccount(playerid); 
            return 1;
        }
    }

 

Share this post


Link to post
Share on other sites
  • 0

@ddrgtagfon Привет, можешь пояснить что изменил? К примеру, что значит:

if(!strlen(inputtext) || !response)

 

Share this post


Link to post
Share on other sites
  • 0

@SheikhMAN русского языка не хватит, увы и ах, если ты делал это по "гайду"/"уроку", будь добр, скинь ссылочку на него, отблагодарю автора русскими словами :horovod:

Share this post


Link to post
Share on other sites
  • 0

@ddrgtagfon Сам писал, пожалуйста не благодарите:haha:, от себя хочу вам сказать благодарственное спасибо! Помогли.

Share this post


Link to post
Share on other sites
This topic is now closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By def
      arizona.pwn(23374) : error 012: invalid function call, not a valid address
      arizona.pwn(23374) : error 001: expected token: ";", but found ")"
      arizona.pwn(23374) : error 029: invalid expression, assumed zero
      arizona.pwn(23374) : fatal error 107: too many error messages on one line
      жалуется на данную строчку:
       
      %s{cccccc}Для продолжения нажмите 'Далее'",PN(playerid),playerid,ItemsInfo[itemid][ItemName2],hours,cost*hours,Inventory[playerid][2][slot], AksColorName(Inventory[playerid][4][slot]), Inventory[playerid][5][slot] ? GetNameStripe(Inventory[playerid][5][slot]) : "");