![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Верификация мыла [D5, D6]
Fast © (2001-10-18 00:29:00)Например клиент заполняет форму с указанием мыла.
Так вот как определить существует ли данное мыло в природе.
Тоесть мне не надо проверять правильность написания самой строки, а надо выяснить, а не нае... ли он меня.
Sergii (2001-10-19 23:55:00) [1]2 Fast: Спам можно красиво оформить. Например, отправить поздравление с успешной регистрацией. :)
Anatoly Podgoretsky (2001-10-18 14:46:00) [2]Цитата!
Тоесть мне не надо проверять правильность написания самой строки, а надо выяснить, а не нае... ли он меня.
Dima-k17 (2001-10-18 09:46:00) [3]function IsValidEmail(const Value: string): boolean;
function CheckAllowed(const s: string): boolean;
var
i: integer;
begin
Result:= false;
for i:= 1 to Length(s) do
begin
{ недопустимый символ в s - значит недопустимый адрес }
if not (s[i] in ["a".."z", "A".."Z", "0".."9", "_", "-", "."]) then
Exit;
end;
Result:= true;
end;
var
i: integer;
namePart, serverPart: string;
begin // начало выполнения IsValidEmail
Result:= false;
i:= Pos("@", Value);
if i = 0 then
Exit;
namePart:= Copy(Value, 1, i - 1);
serverPart:= Copy(Value, i + 1, Length(Value));
// @ не указано имя имя или сервер не указаны; минимально для сервера. "a.com"
if (Length(namePart) = 0) or ((Length(serverPart) < 5)) then
Exit;
i:= Pos(".", serverPart);
// должно иметь точку и как минимум три знака от конца
if (i = 0) or (i > (Length(serverPart) - 2)) then
Exit;
Result:= CheckAllowed(namePart) and CheckAllowed(serverPart);
end;
Fast (2001-10-18 05:17:00) [4]Нет это не оперативно, надо ждать пока почтовый сервис ответит это конечно не часы но минуты точно, да и темболее зачем спам на чужих ящиках разводить?
Sergii (2001-10-18 01:00:00) [5]Отправить письмо на этот ящик - если придет ответ от почтового сервера, что письмо доставить невозможно, то такого адреса нет.