Sign in to follow this  
Followers 0
Syndicate Stormquez

Вопрос по поводу регистрации.

Рекомендованные сообщения



Не найдено.

4 posts in this topic

При прохождение регистрации в диалоге ввода Email, меня не пропускает дальше к следующему диалогу. Причина этого - неверный Email.

Спойлер

case DLG_REGEMAIL:
  		{
		        if(!strlen(inputtext))
				{
					SPD(playerid, DLG_REGEMAIL, DSI, "{f9c520}Регистрация{c9cdcf} • Ввод Email",
						"{c9cdcf}Введите вашу настояющую электронную почту, чтобы продолжить регистрацию.\n\
						Если вы потеряете доступ к аккаунту, то его можно будет восстановить.",
					"Далее", "");
					return SCM(playerid, COLOR_RED, "[Ошибка] {c9cdcf}Введите ваш Email!");
	    		}
	    		new regex:rg_emailcheck = regex_new("^[a-zA-Z0-9._-]{1,43}@[a-zA-Z]{1,12}.[a-zA-Z]{1,8}$");
				if(regex_check(inputtext, rg_emailcheck))
	    		{
		    		strmid(player_info[playerid][Email], inputtext, 0, strlen(inputtext), 64);
		    		SPD(playerid, DLG_REGREF, DSI, "{f9c520}Регистрация{c9cdcf} • Ввод пригласившего",
						"{c9cdcf}Введите NickName пригласившего, еслм он есть.",
					"Далее", "Пропустить");
				}
				else
				{
				    SPD(playerid, DLG_REGEMAIL, DSI, "{f9c520}Регистрация{c9cdcf} • Ввод Email",
						"{c9cdcf}Введите вашу настояющую электронную почту, чтобы продолжить регистрацию.\n\
						Если вы потеряете доступ к аккаунту, то его можно будет восстановить.",
					"Далее", "");
					 return SCM(playerid, COLOR_RED, "[Îøèáêà] {c9cdcf}Укажите верный Email адрес!");
				}
				regex_delete(rg_emailcheck);
		}

 

 

 

Share this post


Link to post
Share on other sites

В целом все должно работать если ввести корректный Email-адрес. К примеру: pawn@bk.ru

Единственное что можно добавить в регулярное выражение, так это то чтобы обязать игрока вводить точку. Выглядеть это будет так: 

^[a-zA-Z0-9._-]{1,43}@[a-zA-Z]{1,12}\\.[a-zA-Z]{1,8}$

 

Edited by punkochel

Share this post


Link to post
Share on other sites
case DLG_REGEMAIL:
  		{
		        if(!strlen(inputtext))
				{
					SPD(playerid, DLG_REGEMAIL, DSI, "{f9c520}Регистрация{c9cdcf} • Ввод Email",
						"{c9cdcf}Введите вашу настояющую электронную почту, чтобы продолжить регистрацию.\n\
						Если вы потеряете доступ к аккаунту, то его можно будет восстановить.",
					"Далее", "");
					return SCM(playerid, COLOR_RED, "[Ошибка] {c9cdcf}Введите ваш Email!");
	    		}
	    		new regex:rg_emailcheck = regex_new("^[a-zA-Z0-9.-_]{1,43}@[a-zA-Z]{1,12}.[a-zA-Z]{1,8}$");
				if(regex_check(inputtext, rg_emailcheck))
	    		{
		    		strmid(player_info[playerid][Email], inputtext, 0, strlen(inputtext), 64);
		    		SPD(playerid, DLG_REGREF, DSI, "{f9c520}Регистрация{c9cdcf} • Ввод пригласившего",
						"{c9cdcf}Введите NickName пригласившего, если он есть.",
					"Далее", "Пропустить");
				}
				else
				{
				    SPD(playerid, DLG_REGEMAIL, DSI, "{f9c520}Регистрация{c9cdcf} • Ввод Email",
						"{c9cdcf}Введите вашу настояющую электронную почту, чтобы продолжить регистрацию.\n\
						Если вы потеряете доступ к аккаунту, то его можно будет восстановить.",
					"Далее", "");
					 return SCM(playerid, COLOR_RED, "[Îøèáêà] {c9cdcf}Укажите верный Email адрес!");
				}
				regex_delete(rg_emailcheck);
		}

Попробуй так

Share this post


Link to post
Share on other sites

@punkochel  нет панели регистрации. Что делать?

 

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • odosenok
      By odosenok
      Описание системы.
      Система полета камерой представляет собой возможность перемещаться в пространстве игры по всем осям (X, Y, Z) путем нажатия кнопок на клавиатуре.
       
      Подключение системы.
      1. Система написана в отдельном файле - include. Вам необходимо скачать этот файл и добавить в папку, находящейся в следующей директории:
      "..\pawno\include" 2. Затем Вам следует открыть свой игровой мод и в начале, после всех инклудов, дописать следующую строку:
      #include <fly>  
      Работа с системой.
      В систему полета камерой включены две функции:
      1.
      SetPlayerFlyStatus(playerid, status = 2) /* playerid - ID игрока, которого Вы хотите "отправить" в режим полета status - режим полета* * предусмотрено три режима полета: CAMERA_MODE_NONE (0) - выключить режим полета, CAMERA_MODE_FLY (1) - включить режим полета, CAMERA_MODE_REVERSE (2) - сменить режим на реверсивный */ 2. 
      IsPlayerFlying(playerid) /* playerid - ID игрока, пребывание в состоянии полета которого Вы хотите проверить *данная функция возвращает: CAMERA_MODE_NONE (0), если игрок не находится в состоянии полета, CAMERA_MODE_FLY (1), если игрок находится в состоянии полета */ При помощи данных функций Вы можете управлять пребыванием игрока в режиме полета, а также получать информацию о том, "летает" ли игрок в тот или иной момент.
       
      Особенности системы.
      Системой полета предусмотрено, что игрок, выходящий из режима полета, появится именно там, где вышел. Так, если Вы покидаете режим полета, пребывая в озере, то появление игрока будет именно в этом озере.
       
      Пример использования.
      CMD:fly(playerid, params[]) { static const MSG_USE_CMD[] = !"» Usage the command: /fly [mode 0-2]"; if(isnull(params)) return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0; new mode; if(sscanf(params, "d", mode)) return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0; else if(!(0 <= mode <= 2)) return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0; SetPlayerFlyStatus(playerid, mode); return 1; } CMD:checkfly(playerid, params[]) { static const MSG_USE_CMD[] = !"» Usage the command: /checkfly [playerid]"; if(isnull(params)) return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0; new id; if(sscanf(params, "u", id)) return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0; else if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, !"The player is not connected") & 0; static const status_fly[][] = { !"The player is not flying", !"The player is flying" }; SendClientMessage(playerid, -1, status_fly[IsPlayerFlying(id)]); return 1 } Авторское право.
      Функции для получения позиции для перемещения камеры, само перемещение вырезаны из разработки Norck.
      В свою очередь я, @odosenok, лишь преобразовал данный код, создал более удобный интерфейс.
       
      fly.inc
    • Drummer1993
      By Drummer1993
      Здравствуйте... не видно обичным игрокам Textdraws помогите куда этот код поставить ? при команде /sp видно.... нужно чтобы всегда было видно заранее спасибо
       
         
    • Goga
      By Goga
      Требуется сменить фон во время регистрации/авторизации 
      так как брал за основу мод Аризоны у них стоит кастомный фон при авторизации   вот - ссылка на фото
      как поменять данный кастомный фон на свой или вернуть его к базовому