Показать сообщение отдельно
  #6 (permalink)  
Старый 09.12.2018, 00:18
Аспирант
Отправить личное сообщение для SolomonRei Посмотреть профиль Найти все сообщения от SolomonRei
 
Регистрация: 05.04.2018
Сообщений: 77

Это к тому, что alert(массив ошибок) это нечто, а нужен массив объектов - "имя_поля" : "сообщение об ошибке", тогда они и будут попадать на свои места. Сервер должен проверять не только разрешения по логину и паролю, адрес, но также занятость адреса и логина. То есть при регистрации обязательно будет диалог, а значит сервер должен возвращать json, и при наличии ошибок отдавать их как массив объектов, о которых говорилось выше.

Ок,вы правы,длину нужно ограничить,но не совсем понял,как поправить скрипт с точки зрения ошибок.В js не силен.В основном php,а js для ajax и декора.
session_start();
				if($this->data['hash'] === $_SESSION['hash_user_reg']) {
					$AB = new Validator();
					$AB->openValidator($this->data['password'], 'ValidatePassword');
					$AB->openValidator($this->data['login'], 'ValidateLogin');
					$AB->openValidator($this->data['password_repeat'], 'ValidatePassword');
					$AB->openValidator($this->data['email'], 'ValidateEmail');
					if ((AbstractValidator::ifErrors()) && (count(AbstractValidator::getNameErrors()) == 0)) {
				$ObjectDB = new ObjectDB(Config::DB_HOST, Config::DB_USER, Config::DB_PASSWORD, Config::DB_NAME, Config::TABLE_NAME, Config::SQ);
                                      ....

									
				      }else AbstractValidator::ErrorException();

А исключение у меня парсится из ini файла с ошибками,и там я никак не могу преобразовать в json.Разве что переписывать класс Exception.Но можно как-то без этого обойтись.Так как я его уже закончил и уже на многих страницах он работает,то есть переписывание класса влечет за собой изменения этого exception на всех страницах.Можно как-то локально обойтись.Спасибо большое!
Ответить с цитированием