Edit report at http://bugs.php.net/bug.php?id=53395&edit=1

 ID:                 53395
 Comment by:         edanpr at gmail dot com
 Reported by:        edanpr at gmail dot com
 Summary:            FILTER_VALIDATE_EMAIL return false on valid emails
 Status:             Bogus
 Type:               Bug
 Package:            Filter related
 Operating System:   debian
 PHP Version:        5.3.3
 Block user comment: N
 Private report:     N

 New Comment:

Ok, 2 dots is wrong, but double dash is still a valid domain which means
users can have email there.



a--b.com - real domain

h--t.com - real domain


Previous Comments:
------------------------------------------------------------------------
[2010-11-25 04:06:44] [email protected]

filter_var() is right in both cases here: domain names can only

include consecutive hyphens when being used for internationalised

domains (which implies that the name is of the form xn--XXX), and the

local part of an e-mail address can't include consecutive dots, per

the grammar in RFC 5322.

------------------------------------------------------------------------
[2010-11-24 12:58:10] edanpr at gmail dot com

Description:
------------
In php 5.3.3 using filter_var to validate email (FILTER_VALIDATE_EMAIL)
that got more than one period (.) or dash (-) results in error while in
5.3.2 it didn't.



[email protected] will return false on 5.3.3 and true on 5.3.2

[email protected] will return false on 5.3.3 and true on 5.3.2

Test script:
---------------
<?

$adr1 = '[email protected]';

$adr2 = '[email protected]';

var_dump(filter_var($adr1, FILTER_VALIDATE_EMAIL));

var_dump(filter_var($adr2, FILTER_VALIDATE_EMAIL));



Expected result:
----------------
string(15) "[email protected]"

string(13) "[email protected]"



Actual result:
--------------
bool(false)

bool(false)




------------------------------------------------------------------------



-- 
Edit this bug report at http://bugs.php.net/bug.php?id=53395&edit=1

Reply via email to