Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » Как реализовать фильтрацию email?

Как реализовать фильтрацию email?


     02.03.2018    email, блокировка    Общие вопросы по PHP, MySQL    1138

вопрос
Всем привет! Вроде простая задача, но что-то не складывается у меня.
Есть скрипт, похожий на DLE. Необходимо было сделать блокировку регистрации при вводе определенного email адреса.
Проверку на валидность (наличие знака @ и прочего ) происходит средствами jscript, думал прикрутить туда проверку email, но беда в том, что из имеющегося варианта - есть только тот, где необходимо ручками в код вводить каждый email адрес - что на начальном этапе реально, но если эта база email адресов будет больше - встанет проблема каждый раз добавлять. В реализациях есть блокировка по ip, решил туда добавить email - в принципе запрос на проверку все равно делается. Email адрес добавляется нормально - т.е. есть таблица с которой можно считывать те самые адреса. Проблема стала при регистрации - или блокирует всю регистрацию - или пропускает без проверки.
Часть кода код:
//Если код введные юзером совпадает, то пропускаем, иначе выводим ошибку
		if($sec_code == $session_sec_code){                        

			//Входные POST Данные
			$user_name = ajax_utf8(textFilter($_POST['name'], false, true));
			$user_lastname = ajax_utf8(textFilter($_POST['lastname'], false, true));
			$user_email = ajax_utf8(textFilter($_POST['email'], false, true));
                        
                        [u]$emailblo = ajax_utf8(textFilter($_POST['email'], false, true));
                        $emailbloc = explode("@",$user_email);[/u]

Т.е. $emailbloc - отбирает входные post данные и отсекает все что до @ стоит, оставляя нам именно адрес почтового сайта.
Далее:

//Проверка E-mail блокировки                   
if($db->num_rows($db->query( "SELECT id FROM `".PREFIX."_banned` WHERE email = '".$emailbloc."'" )) =< 1) $errors[] = 0;      

На самом деле пробовал много вариантов, задавал переменную, например $emailblock, делал запрос в БД, вытягивая email, потом ставил в if сравнение $emailblock == $emailbloc,..приведенный выше код - уже решил сделать подсчет количества id и сделать проверку с помощью этого на наличие email в фильтре. Но все равно он или выдает ошибку, без разницы с какого email пытаюсь зарегистрироваться.
Подскажите как правильно можно реализовать данную фильтрацию по регистрации, с запретом на email?

Ответа пока нет


Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх