| 
<?php/*
 * test_email_validation.html
 *
 * @(#) $Header: /opt2/ena/metal/emailvalidation/test_email_validation.php,v 1.14 2024/02/07 12:19:09 mlemos Exp $
 *
 */
 
 ?><html>
 <head>
 <title>Test for Manuel Lemos's PHP E-mail validation class</title>
 </head>
 <body>
 <h1 align="center">Test for Manuel Lemos's PHP E-mail validation class</h1>
 <hr>
 <?php
 require("email_validation.php");
 
 $validator=new email_validation_class;
 
 /* how many seconds to wait before each attempt to connect to the
 destination e-mail server */
 $validator->timeout=10;
 
 /* how many seconds to wait for data exchanged with the server.
 set to a non zero value if the data timeout will be different
 than the connection timeout. */
 $validator->data_timeout=0;
 
 /* user part of the e-mail address of the sending user
 ([email protected] in this example) */
 $validator->localuser="info";
 
 /* domain part of the e-mail address of the sending user */
 $validator->localhost="phpclasses.org";
 
 /* Set to 1 if you want to output of the dialog with the
 destination mail server */
 $validator->debug=1;
 
 /* Set to 1 if you want the debug output to be formatted to be
 displayed properly in a HTML page. */
 $validator->html_debug=1;
 
 
 /* When it is not possible to resolve the e-mail address of
 destination server (MX record) eventually because the domain is
 invalid, this class tries to resolve the domain address (A
 record). If it fails, usually the resolver library assumes that
 could be because the specified domain is just the subdomain
 part. So, it appends the local default domain and tries to
 resolve the resulting domain. It may happen that the local DNS
 has an * for the A record, so any sub-domain is resolved to some
 local IP address. This  prevents the class from figuring if the
 specified e-mail address domain is valid. To avoid this problem,
 just specify in this variable the local address that the
 resolver library would return with gethostbyname() function for
 invalid global domains that would be confused with valid local
 domains. Here it can be either the domain name or its IP address. */
 $validator->exclude_address="";
 $validator->invalid_email_domains_file = 'invalidemaildomains.csv';
 $validator->invalid_email_servers_file = 'invalidemailservers.csv';
 $validator->email_domains_white_list_file = 'emaildomainswhitelist.csv';
 
 if(IsSet($_GET["email"]))
 $email=$_GET["email"];
 if(IsSet($email)
 && strcmp($email,""))
 {
 if(strlen($error = $validator->ValidateAddress($email, $valid)))
 {
 echo "<h2 align=\"center\">Error: ".HtmlSpecialChars($error)."</h2>\n";
 }
 elseif(!$valid)
 {
 echo "<h2 align=\"center\"><tt>$email</tt> is not a valid deliverable e-mail box address.</h2>\n";
 if(count($validator->suggestions))
 {
 $suggestion = $validator->suggestions[0];
 $link = '?email='.UrlEncode($suggestion);
 echo "<H2 align=\"center\">Did you mean <a href=\"".HtmlSpecialChars($link)."\"><tt>".HtmlSpecialChars($suggestion)."</tt></a>?</H2>\n";
 }
 }
 elseif(($result=$validator->ValidateEmailBox($email))<0)
 echo "<h2 align=\"center\">It was not possible to determine if <tt>$email</tt> is a valid deliverable e-mail box address.</h2>\n";
 else
 echo "<h2 align=\"center\"><tt>$email</tt> is ".($result ? "" : "not ")."a valid deliverable e-mail box address.</h2>\n";
 }
 else
 {
 $email = '[email protected]';
 $link = '?email='.$email;
 echo "<h2 align=\"center\">Access this page using passing the email to validate here: <a href=\"".HtmlSpecialChars($link)."\"><tt>".$email."</tt></a></h2>\n";
 }
 ?>
 <hr>
 </body>
 </html>
 
 |