Re: Validating Email Conditional

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





CK wrote:
Hi,

My script is working, but valid returns true even if the user is bogus. What needs changing so both conditions have to match, the following attempt returned "unexpected logical...."

if (getmxrr($domaintld,$mxrecords)) && if(fsockopen($domaintld,25,$errno,$errstr,30)) {
         $valid = true;
         }


You don't need to write the second 'if', just wrap the two conditionals in parentheses:

if ( getmxrr($domaintld,$mxrecords) && fsockopen($domaintld,25,$errno,$errstr,30) )
   $valid = true;

You could equally use nested conditionals:

if (getmxrr($domaintld,$mxrecords)) {
  if (fsockopen($domaintld,25,$errno,$errstr,30))
     $valid = true;
}

There is no need for the second $valid = false in your code below, since you define that at the start.

Edward


The following works, but needs the conditional mentioned...

<?php
$email = "lotus@xxxxxxxxxxxxxxx";
$valid="";

function validate_email($email)


{

   // Create the syntax of email with validation regular expression
$regexp = "^([_a-z0-9-]+)(\.[_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,4})$";

   // Presume that the email is invalid
   $valid = false;

   // Validate the syntax
   if (eregi($regexp, $email))
   {
      list($username,$domaintld) = split("@",$email);
      // Validate the domain
      if (getmxrr($domaintld,$mxrecords))
         $valid = true;
         }
    // attempts a socket connection to mail server
  if(fsockopen($domaintld,25,$errno,$errstr,30)) {
        $valid = true;
   } else {
          $valid = false;
  }
     return $valid;
}

if (validate_email($email))
   echo "Email is valid!";
else
   echo "Email is invalid!";

?>

--PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux