Jump to content

validate URL


scvinodkumar

Recommended Posts

Hi i have validate the URL in php. I am using the below regular expression to valdiate it...for some url its working but for few url its not working...could u plz help me

 

this is the code i am using currently

 

function isValidURL($url)
{            
    return preg_match('|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $url);
}

 

For example, if enter the invalid url, still it accepting,

 

http://test

 

Link to comment
https://forums.phpfreaks.com/topic/223350-validate-url/
Share on other sites

That's because you make the rest of the parts optional. 

 

(.[a-z0-9-]+)*

 

You require a single char and then one or more chars from the char class...but then group it (wrap it in parenthesis) and put a 0 or more quantifier on it, effectively making it optional.

 

(:[0-9]+)?

 

You require a : and then 1 or more numbers..but then group it and put a 0 or 1 quantifier on it, effectively making it optional.

 

(/.*)?

 

You require a / and then 0 or more of anything...but then group it and put a 0 or 1 quantifier on it, effectively making it optional.

 

Just google "url regex" or similar, you will see literally a ton of results for some good url validation regexes you can use...it's a very common topic.

Link to comment
https://forums.phpfreaks.com/topic/223350-validate-url/#findComment-1154639
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.