Re: Re: Issue with filter_var and FILTER_VALIDATE_EMAIL
| From: | Bastien Koert | Date: | Fri, 19 Jun 2009 15:56:29 +0000 |
| Subject: | Re: Re: Issue with filter_var and FILTER_VALIDATE_EMAIL | ||
| References: | 1 2 3 4 5 6 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-294338@lists.php.net to get a copy of this message | ||
On Fri, Jun 19, 2009 at 11:46 AM, Shawn McKenzie<nospam@mckenzies.net> wrote:
> Bastien Koert wrote:
>> On Fri, Jun 19, 2009 at 11:20 AM, Jonathan Tapicer<tapicer@gmail.com> wrote:
>>> Did you execute the code I sent? Does it give you a false?
>>>
>>> Jonathan
>>>
>>> On Fri, Jun 19, 2009 at 12:17 PM, Bastien Koert<phpster@gmail.com> wrote:
>>>> Correct, I send the @
>>>>
>>>>
>>>> Bastien
>>>>
>>>> On Friday, June 19, 2009, Jonathan Tapicer <tapicer@gmail.com> wrote:
>>>>> Works for me:
>>>>>
>>>>> var_dump(filter_var('bastien_k(a)hotmail.com
>>>>> <http://hotmail.com>',
>>>>> FILTER_VALIDATE_EMAIL) !== false); //replace (a) with @
>>>>>
>>>>> Gives:
>>>>>
>>>>> bool(true)
>>>>>
>>>>> You are sending an @ instead of " at ", right?
>>>>>
>>>>> Jonathan
>>>>>
>>>>>
>>>>> On Fri, Jun 19, 2009 at 11:49 AM, Bastien Koert<phpster@gmail.com> wrote:
>>>>>> Hey guys,
>>>>>>
>>>>>> Running the new version of PHPMailer and my hotmail address fails the
>>>>>> validation.
>>>>>>
>>>>>> Email address is bastien_k at hotmail dot com
>>>>>>
>>>>>> Any ideas?
>>>>>>
>>>>>> --
>>>>>>
>>>>>> Bastien
>>>>>>
>>>>>> Cat, the other other white meat
>>>>>>
>>>>>> --
>>>>>> PHP General Mailing List (http://www.php.net/)
>>>>>> To unsubscribe, visit:
>>>>>> http://www.php.net/unsub.php
>>>>>>
>>>>>>
>>>> --
>>>>
>>>> Bastien
>>>>
>>>> Cat, the other other white meat
>>>>
>>
>> this is the relevant function from phpmailer
>> public static function ValidateAddress($address) {
>> if (function_exists('filter_var')) { //Introduced in PHP 5.2
>> if(filter_var($address, FILTER_VALIDATE_EMAIL) === FALSE) {
>> return false;
>> } else {
>> return true;
>> }
>> } else {
>> return
>> preg_match('/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\
\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!\.)){0,61}[a-zA-Z0-9_-]?\.)+[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!$)){0,61}[a-zA-Z0-9_]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/',
>> $address);
>> }
>>
>> }
>>
>>
>>
>
> Is your PHP version >= 5.2? If not then the regex will return 1, so in
> your code don't check for === true. Try == true if that's what you're
> doing.
>
> --
> Thanks!
> -Shawn
> http://www.spidean.com
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
its 5.2.4
--
Bastien
Cat, the other other white meat