Re: Regular expression - URL validator

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

 



On 8/28/07, Wagner Garcia Campagner <wagnergc@xxxxxxxxxxx> wrote:
>
> Thanks Jim,
>
> Your sugestion worked perfect for me!!
>
> I have another question:
>
> After i validate this URL i want to put a link with this URL in my page.
>
> The problem is that if the URL is like (www.aol.com), when i create the
> link, this URL is appended with the URL of my site. The result is a link
> pointing to: http://<mywebsite>/www.aol.com
>
> But if the URL is like (http://aol.com), then the link is created correct.
>
> Is there a way to avoid the first situation... so the link is created
> correct?
>
> Thanks again,
> Wagner.
>
>
>
> -----Original Message-----
> From: Jim Lucas [mailto:lists@xxxxxxxxx]
> Sent: segunda-feira, 27 de agosto de 2007 17:36
> To: PHP General; wagnergc@xxxxxxxxxxx
> Subject: Re:  Regular expression - URL validator
>
>
> Wagner Garcia Campagner wrote:
> > Hello,
> >
> > I found this regular expression on a web site.
> > It is basicaly an URL validator.
> >
> > I'm trying to implement this in my web site, but i receive errors.
> >
> > I think this is a PERL REGEX so what should i do to make it work in php?
> >
> >
> > $valid =
> >
>
> (preg_match('^((((H|h)(T|t)|(F|f))(T|t)(P|p)((S|s)?))\://)?(www.|[a-zA-Z0-9]
> >
>
> .)[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,6}(\:[0-9]{1,5})*(/($|[a-zA-Z0-9\.\,\;\?\'\\\
> > +&amp;%\$#\=~_\-]+))*$', $_POST['website']));
>
> This should be preg_match('/.../i', $_POST['website'])
>
> your regex should look something like this.
>
>
> ^((ftp|(http(s)?))://)?(\.?([a-z0-9-]+))+\.[a-z]{2,6}(:[0-9]{1,5})?(/[a-zA-Z
> 0-9.,;\?|\'+&%\$#=~_-]+)*$
>
> So, put it all together and it should look like this.
>
> <?php
>
> $url = "...PUT YOUR TEST URL HERE...";
>
> if (
>
> preg_match('!^((ftp|(http(s)?))://)?(\.?([a-z0-9-]+))+\.[a-z]{2,6}(:[0-9]{1,
> 5})?(/[a-zA-Z0-9.,;\?|\'+&%\$#=~_-]+)*$!i',
> $url) ) {
>         echo "Matched";
> } else {
>         echo "Did not match";
> }
>
>
>
>
> >
> > if ($valido == 0) {
> >     something here;
> >     }
> > else {
> >     something else here;
> >     }
> >
> >
> > Thanks a lot in advance,
> > Wagner.
> >
>
>
>
> --
> Jim Lucas
>
>     "Some men are born to greatness, some achieve greatness,
>         and some have greatness thrust upon them."
>
> Twelfth Night, Act II, Scene V
>      by William Shakespeare
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
you must use http://www.aol.com not www.aol.com. coz the later is not a
valid url. The protocol is not specified there. and if you use
www.aol.comis your href of a tags, the browser will automatically add
your current web
address as prefix as if its a relative url.
if your site is http://www.example.com/folder/site.html
and if you use href="/www.aol.com" it will show http://www.example.com/
www.aol.com
if you use href="www.aol.com" it will show
http://www.example.com/folder/<http://www.aol.com/>
www.aol.com
you have to use href="http://www.aol.com"; the absolute one.

-- 
shout at http://shiplu.awardspace.com/

Available for Hire/Contract/Full Time

[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