TemKa_SD 9 08/16/18 05:06 Не пойму, как идет проверка на наличие логина в базе данных. В файле \applications\core\modules\front\system\register.php вроде нету, а подключение core.front.system.register только в нем и одном js файле. Поделиться сообщением Ссылка на сообщение
newbie 1723 08/16/18 05:56 Не пойму, как идет проверка на наличие логина в базе данных. В файле \applications\core\modules\front\system\register.php вроде нету, а подключение core.front.system.register только в нем и одном js файле. Вам оно зачем, если Ваши поля не связаны с именами юзеров? Поделиться сообщением Ссылка на сообщение
TemKa_SD 9 08/16/18 06:04 Я хочу сделать проверку логина в своей внешней базе (игрового ника). Поделиться сообщением Ссылка на сообщение
newbie 1723 08/16/18 06:27 Я хочу сделать проверку логина в своей внешней базе (игрового ника).Пишите подробнее, где и что должно быть. Поделиться сообщением Ссылка на сообщение
TemKa_SD 9 08/16/18 06:37 Вот код модуля по регистрации игрового ника во внешней базе денных, функция addpvpgn.Я хочу сделать чтобы при вводе логина (игровой ник во внешней БД) проверялось его наличие, и в случае нахождения выдавало ошибку как на скрине.BNetAccount.php Поделиться сообщением Ссылка на сообщение
newbie 1723 08/16/18 06:48 Я хочу сделать чтобы при вводе логина (игровой ник во внешней БД) проверялось его наличие, и в случае нахождения выдавало ошибку как на скрине.Без нажатия на кнопку? Ввел и получил результат?Если так, то там используется ajax. См. /** * Fires an ajax request to check whether the username is already in use * Updates the result element depending on the result * * @returns {void} */ _doCheck: function (type, field) { Поделиться сообщением Ссылка на сообщение
TemKa_SD 9 08/16/18 08:05 Не, не для моих это мозгов. Я думал будет что-то примерно: $form->add( new \IPS\Helpers\Form\Text( 'username', NULL, TRUE, array( 'accountUsername' => $переменная, в которой записан результат выборки из БД ) ) ); Поделиться сообщением Ссылка на сообщение
newbie 1723 08/16/18 09:29 'accountUsername' => $переменная, в которой записан результат выборки из БДЗабудьте про accountUsernameНе, не для моих это мозговСделайте на submit. Юзер отправил форму -> идет проверка на ник. $form->add( new \IPS\Helpers\Form\Text( 'username', NULL, TRUE, array(), function ($value) { $nick = false; // Проверяете игровой ник во внешней БД if (!$nick) { throw new \DomainException('Указанного ника не существует'); } } ) ); Поделиться сообщением Ссылка на сообщение
newbie 1723 08/16/18 09:58 Кстати, у Вас там еще пароли фигурируют, которые тоже должны проверяться. Поделиться сообщением Ссылка на сообщение
TemKa_SD 9 08/16/18 10:02 Большое спасибо, работает. А нельзя сделать, чтобы форма не перезагружалась на отдельную страницу? $form->addHeader('sharedstats_pvpgn_account_add', NULL, TRUE, array(), function ($value) { $nick = $db::i('pvpgn')->select('username', 'pvpgn_BNET', [['username=?', $value]]); if ($nick) { throw new \DomainException('Такой игровой логин уже зарегистрирован, выберите другой.'); } }); Поделиться сообщением Ссылка на сообщение
TemKa_SD 9 08/16/18 10:05 Кстати, у Вас там еще пароли фигурируют, которые тоже должны проверяться. Проверяться на что? Поделиться сообщением Ссылка на сообщение
newbie 1723 08/16/18 10:16 А нельзя сделать, чтобы форма не перезагружалась на отдельную страницу?ajax или открывайте форму в попап-окне Проверяться на что? На корректность. Если я знаю ник, то смогу его добавить, введя любой пароль. Поделиться сообщением Ссылка на сообщение
TemKa_SD 9 08/16/18 10:17 На корректность. Если я знаю ник, то смогу его добавить, введя любой пароль. Не понял ) Поделиться сообщением Ссылка на сообщение
TemKa_SD 9 08/16/18 10:21 Подскажите пожалуйста, как вывести результат вот этого запроса в шаблон, чтобы скрыть эту кнопку. Поделиться сообщением Ссылка на сообщение
newbie 1723 08/16/18 10:25 Не понял ) $form->add( new \IPS\Helpers\Form\Password( 'password', '', TRUE, array( 'minLength' => 3, 'maxLength' => 15 ) ) ); $form->add( new \IPS\Helpers\Form\Password( 'password_confirm', '', TRUE, array( 'confirm' => 'password', 'minLength' => 3, 'maxLength' => 15 ) ) ); Что это за пароль? Для чего он нужен? Подскажите пожалуйста, как вывести результат вот этого запроса в шаблон, чтобы скрыть эту кнопку. Я же писал, ищите шаблон, где выводится кнопка и добавьте новый параметр. Поделиться сообщением Ссылка на сообщение