Как установить сбой во время регистрации. Выходит сообщение после нажатие на кнопку отправки. "Введите данные в указанном формате." Картинку прикрепил. HTML HTML: <form action="register.php" id="registerform" method="post" name="registerform" enctype="multipart/form-data"> <p><label>E-mail<br> <input id="email" name="email" size="32"type="email" required></label></p> <p><label>Пароль<br> <input id="password" name="password"size="32" type="password" required></label></p> <p><label>Телефон<br> <input id="phone" name="phone" size="20" type="text" pattern="/^[+|0-9{1}][0-9()\- ]{11,}/x" required></label></p> <p><label>Имя<br> <input id="first_name" name="first_name" size="20" type="text" pattern="/[а-яА-Яa-zA-ZёЁ]{2,}/u" required></label></p> <p><label>Фамилия<br> <input id="last_name" name="last_name" size="20" type="text" pattern="/[а-яА-Яa-zA-ZёЁ]{2,}/u" required></label></p> <p><label>Страна<br> <input id="country" name="country" size="20" type="text" pattern="/[а-яА-Яa-zA-ZёЁ]{2,}/u" required></label></p> <p><label>Город<br> <input id="city" name="city" size="20" type="text" pattern="/[а-яА-Яa-zA-ZёЁ]{2,}/u" required></label></p> <p><label>Дата рождения<br> <input id="bdate" name="bdate" size="20" type="date" required></label></p> <p><label>Выберите аватар. Изображение должно быть формата jpg, gif или png:<br><input type="file" name="fupload" /></label></p> <p class="submit"><input class="btn btn-primary" type="submit" name="submit" value="Зарегистрироваться" formaction="register.php"></p> <p class="regtext">Уже зарегистрированы? <a href= "login.php">Введите имя пользователя</a>!</p> </form>
какой? --- Добавлено --- это лишнее по всем фактам, каждый браузер по своему реагирует. Проверка на стороне сервера ведется
В HTML: name="phone" size="20" type="text" pattern="/^[+|0-9{1}][0-9()\- ]{11,}/x" убери ^ или добавь m
@Даниль1999, загляните, например: pattern phones и творчески переработайте. Или используйте jquery.maskedinput плагин.
Надо делать и на стороне клиента и на стороне сервера. На стороне клиента - для удобства клиента, чтобы он был уверен, что все вводит правильно, чтобы не пришлось потом вводить заново и все такое прочее. На стороне сервера - из соображений безопасности, разумеется.
А смысл тратиться на проверку клиентской части данных ( миллион всех нюансов, тех же что юзер может вовсе не юзер "проверка клиента улетела" ), когда в любом случае мы сможем скомпоновать JSON строку и выдать ответ в js для дальнейшего приукрашивания ошибок, без перезагрузки страницы ?
не факт, юзер может повторно f5 послать данные, и мы все равно на сервере будет проверять на актуальность той формы, а потом уже данные
Все нюансы просчитал, прежде чем пост создать ? --- Добавлено --- Ты помадой ржавый танк покрасишь, а он все равно будет хуем по земле елозить.
Какие данные юзер может послать по F5, если браузер, при нормальном сценарии, не допустит отправку формы, которая не проходит клиентскую валидацию? Или ты просто про обновление странички? Ну тогда юзер может и в окно выйти. Или может стать бетменом. Юзер много что может. Речь не о том. Речь о случае, когда юзер заполнил поля и нажал "отправить". И тут есть два варианта: 1) Запрос уходит на сервер в любом случае, мы делаем проверку, если что не так - сообщаем. 2) Запрос не уходит, если форма заполнена не правильно, но, когда уйдет, мы все равно делаем проверку и, если что не так - сообщаем. Организация пункта 2 включает в себя, внезапно, пункт 1. Но, при этом, ничего нам не стоит и, если браузер поддерживает html5-валидацию(пора бы уже, 2018 год на дворе), львиную долю некорректных запросов мы срежем на стороне клиента. А валидация эта сейчас работает красиво, браузер, в ряде случаев, понимает, что ты от него хочешь, и, кроме того, что подсвечивает нужное поле, сам подсказывает, мол "введите число от N до M" или "пожалуйста, используйте только русские буквы". Красота же! Которая нам, повторюсь, ничего не стоит. Не пользоваться этим просто глупо.
Сам факт того что юзер зашел на твой сайт - уже запрос на контент. Это аналогично тому что будет бродить по сайту, как и в прочем проверка на стороне сервера запрос --- Добавлено --- Не вижу смысла
@Dimon2x Вот есть у тебя кнопка для загрузки картинок. Даже в твоем случаи без дизайна она выглядит дико. Оставлять так в 2к18 нельзя. Нужно перерисовывать. HTML: <input id="file" type="file" style="display:none" /> <button onclick="document.getElementById('file').click()">Click</button>
@Dimon2x ну да просто немного отличается от других кнопок еще и хвостик непонятный с названием файла и текст не меняется и функционала ноль. В том же react или vue пишешь один раз нормальный компонент и наслаждаешь. Хотя можно и на чистом js замену делать.
@Fell-x27 Тут помимо нативного решение еще и дизайн страшный бедные пользователи смартфонов) плюс в разных браузерах по разному
Редкий пользователь на один сайт с разных браузеров заглянет... Обычно как? Набил строку поисковую, перешёл по ссылке - оценил предложение и либо заказал звонок менеджера/мастера/специалиста, либо закрыл сайт и забыл о нём
А с ними что не так? Или ты думаешь, что в том же мобильном хроме оно как-то по-особому выглядит, а не как аккуратный баббл? Будешь удивлен.