Узнать разрешение вашего экрана и IP адрес   •   Online-инструменты
632 просм
0 комм
Поделиться:

Проверяем e-mail на валидность на PHP/jQuery

Сегодня я хотел бы поговорить с вами немного о валидности. Что это такое? Это проверка введенной информации согласно какому-либо шаблону, маске. Все мы знаем, что мобильный телефон для России начинается с +7, а e-mail должен содержать в себе знак @.

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

Проверка валидности e-mail на PHP

Итак, мы полагаем, что в какую-то переменную нам поступает e-mail пользователя. Наша задача – проверить ее корректность, и если в адресе имеется ошибка – сообщить пользователю об этом.

Реализация следующая:

<?php
	$email = "test#gmail.com"; // E-mail пользователя
	$pattern = "|^([a-z0-9_\.\-]{1,20})@([a-z0-9\.\-]{1,20})\.([a-z]{2,4})|is";
	if(preg_match($pattern, strtolower($email))) {
	// Действие, если e-mail корректен
	} else {
	// Действие, если e-mail некорректен 
	}
?>

Соответственно, если e-mail некорректен, вы можете вывести необходимое сообщение и остановить дальнейшее выполнение скрипта (в нашем случае – отправку) до тех пор, пока не будет указан правильный e-mail.

Проверка валидности e-mail на jQuery

Поскольку jQuery – клиентский скрипт (то есть выполняется на стороне пользователя), то здесь мы рассмотрим live-пример, где при введении e-mail в некоторое поле будет мобильно происходить проверка его на корректность.

У нас есть поле для ввода e-mail:

<input type="email" name="email" id="valid_email">

Теперь напишем небольшой скрипт, который будет проверять корректность заполненного поля после того, как оно потеряло фокус:

<script>
	$("#valid_email").blur(function(){
		var email = $(this).val(); // Получаем e-mail пользователя
		var pattern = /^[A-Z0-9._%+-]+@([A-Z0-9-]+\.)+[A-Z]{2,4}$/i;
		if(pattern.test(email)) {
		// Действие, если e-mail корректен
		} else {
		// Действие, если e-mail некорректен
		}
	}); 
</script>

По желанию, в случае некорректного ввода можно вывести необходимое сообщение или, например, заблокировать кнопку формы.

0
комментарий
Оставить комментарий:
Нажимая кнопку «Отправить» вы даете согласие на обработку своих персональных данных.
Ваше Имя
Ваш E-mail
Текст комментария