Поддержка / Donate
 

WebMoney

Яндекс.Деньги

SMS.Копилка
Деньги@Mail.ru
Rupay
E-gold
PayPal

 

Благодарю за поддержку!

Лента RSS - Новости сайта Новости сайта
Лента RSS - Новости форума Новости форума
Добавить в закладки и поделиться Bookmark and Share

 

Архив исходников

 


Automatic translation

 
English German French
Italian Spanish Portuguese
Greece Japan Chinese
  Korean  

  

 

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Проверка правильности е-mail адреса с проверкой существования домена

Автор: Dimka Maslov
WEB-сайт: http://delphibase.endimus.com

{ **** UBPFD *********** by delphibase.endimus.com ****
>> Проверка правильности е-mail адреса с проверкой существования домена

Функция проверяет как общий синтаксис написания адреса
(обязателен символ @, имя пользователя должно содержать
только разрешённые символы) а также и определяет,
существует ли домен, указанный в адресе. Функция
возвращает True, если адрес записан правильно и домен
существует, False в случае ошибки. Недостатком такой
функции является требование наличия соединения с
интернетом, а также замедление работы при указании
в адресе несуществующего домена.

Зависит от функции CheckDomain, приведённой здесь:
http://delphibase.endimus.ru?action=viewfunc&id=10258

Зависимости: SysUtils, WinSock, UBPFD.CheckDomain
Автор:       Dimka Maslov, mainbox@endimus.ru, ICQ:148442121, Санкт-Петербург
Copyright:   Dimka Maslov
Дата:        3 июля 2002 г.
***************************************************** }

function CheckEmailAddr(Addr: string): Boolean;
var
  P: Integer;
  User, Domain: string;
  i: Integer;
begin
  Result := False;
  Addr := AnsiLowerCase(Addr);
  P := Pos('@', Addr);
  if P = 0 then
    Exit;
  User := Copy(Addr, 1, P - 1);
  Domain := Copy(Addr, P + 1, Length(Addr) - P);
  for i := 1 to Length(User) do
    if not (User[i] in ['a'..'z', '0'..'9', '.', '-', '_']) then
      Exit;
  Result := CheckDomain('www.' + Domain);
  if not Result then
    Result := CheckDomain(Domain);
end;



Источник - Проект "Delphi World" © Выпуск 2002 - 2004
Автор проекта: Акулов Николай



   Rambler's Top100             Яндекс цитирования