top button
Flag Notify
    Connect to us
      Site Registration

Site Registration

URL Encoding and webaddress?

+1 vote
9,513 views

While sharing something today we found that if url is some special character then third party API can have issues so thought to share with you so that it can benefit to everyone.

What is URL

URL means Uniform Resource Locator, which is nothing but a address of webpage i.e. http://tech.queryhome.com/

Why URL encoding is required

URLs is sent on TCP/IP using the ASCII character-set and if it contains some characters which are not in standard ASCII set, then its better to convert it into a ASCII format by adding "%" followed by two hexadecimal digits.

How to convert URL into Valid ASCII format

PHP

$url = "http://tech.queryhome.com"
$coded_url = urlencode($url)

Javascript
You have three options here

escape() will not encode: @*/+
encodeURI() will not encode: ~!@#$&*()=:/,;?+'
encodeURIComponent() will not encode: ~!*()'

Rails

require "erb"
include ERB::Util
puts url_encode("http://tech.queryhome.com")

URL Encoding Reference

space  %20
!      %21
"      %22
#      %23
$      %24
%      %25
&      %26
'      %27
(      %28
)      %29
*      %2A
+      %2B
,      %2C
-      %2D
.      %2E
/      %2F
0      %30
1      %31
2      %32
3      %33
4      %34
5      %35
6      %36
7      %37
8      %38
9      %39
:      %3A
;      %3B
<      %3C
=      %3D
>      %3E
?      %3F
@      %40
A      %41
B      %42
C      %43
D      %44
E      %45
F      %46
G      %47
H      %48
I      %49
J      %4A
K      %4B
L      %4C
M      %4D
N      %4E
O      %4F
P      %50
Q      %51
R      %52
S      %53
T      %54
U      %55
V      %56
W      %57
X      %58
Y      %59
Z      %5A
[      %5B
\      %5C
]      %5D
^      %5E
_      %5F
`      %60
a      %61
b      %62
c      %63
d      %64
e      %65
f      %66
g      %67
h      %68
i      %69
j      %6A
k      %6B
l      %6C
m      %6D
n      %6E
o      %6F
p      %70
q      %71
r      %72
s      %73
t      %74
u      %75
v      %76
w      %77
x      %78
y      %79
z      %7A
{      %7B
|      %7C
}      %7D
~      %7E
       %7F
`      %80
       %81
‚      %82
ƒ      %83
„      %84
…      %85
†      %86
‡      %87
ˆ      %88
‰      %89
Š      %8A
‹      %8B
Π     %8C
       %8D
Ž      %8E
       %8F
       %90
‘      %91
’      %92
“      %93
”      %94
•      %95
–      %96
—      %97
˜      %98
™      %99
š      %9A
›      %9B
œ      %9C
       %9D
ž      %9E
Ÿ      %9F
       %A0
¡      %A1
¢      %A2
£      %A3
¤      %A4
¥      %A5
¦      %A6
§      %A7
¨      %A8
©      %A9
ª      %AA
«      %AB
¬      %AC
       %AD
®      %AE
¯      %AF
°      %B0
±      %B1
²      %B2
³      %B3
´      %B4
µ      %B5
¶      %B6
·      %B7
¸      %B8
¹      %B9
º      %BA
»      %BB
¼      %BC
½      %BD
¾      %BE
¿      %BF
À      %C0
Á      %C1
      %C2
à     %C3
Ä      %C4
Å      %C5
Æ      %C6
Ç      %C7
È      %C8
É      %C9
Ê      %CA
Ë      %CB
Ì      %CC
Í      %CD
Î      %CE
Ï      %CF
Ð      %D0
Ñ      %D1
Ò      %D2
Ó      %D3
Ô      %D4
Õ      %D5
Ö      %D6
×      %D7
Ø      %D8
Ù      %D9
Ú      %DA
Û      %DB
Ü      %DC
Ý      %DD
Þ      %DE
ß      %DF
à      %E0
á      %E1
â      %E2
ã      %E3
ä      %E4
å      %E5
æ      %E6
ç      %E7
è      %E8
é      %E9
ê      %EA
ë      %EB
ì      %EC
í      %ED
î      %EE
ï      %EF
ð      %F0
ñ      %F1
ò      %F2
ó      %F3
ô      %F4
õ      %F5
ö      %F6
÷      %F7
ø      %F8
ù      %F9
ú      %FA
û      %FB
ü      %FC
ý      %FD
þ      %FE
ÿ      %FF
posted Aug 27, 2014 by Salil Agrawal

  Promote This Article
Facebook Share Button Twitter Share Button LinkedIn Share Button


Related Articles

Many a times we need to convert a url which is in http://tech.QueryHome.com to http://tech.QueryHome.com which requires the string to be converted in the following form <a href="http://tech.QueryHome.com">http://tech.QueryHome.com</a>.

Following are the steps to convert it without much effort -
Step 1: Suppose you are given a string called str which contains one or more URLs.
Step 2: Run the following command to convert URLs within the str to convert all URLs to hyperlink.

$newstr = preg_replace('@(https?://([-\w\.]+[-\w])+(:\d+)?(/([\w/_\.#-]*(\?\S+)?[^\.\s])?)?)@', '<a href="$1" >$1</a>', $str);

Step 3: If you need that your link should open into a new window/tab then

$newstr = preg_replace('@(https?://([-\w\.]+[-\w])+(:\d+)?(/([\w/_\.#-]*(\?\S+)?[^\.\s])?)?)@', '<a href="$1" target="_blank">$1</a>', $s);

Above steps covers only if your string is starting from http/ftp/scp what if the string is starting with www then

Step 2: Run the following command to convert URLs within the str to convert all URLs to hyperlink.

preg_replace('$(www\.[a-z0-9_./?=&-]+)(?![^<>]*>)$i', '<a href="http://$1">$1</a> ', $str);

Step 3: If you need that your link should open into a new window/tab then

preg_replace('$(www\.[a-z0-9_./?=&-]+)(?![^<>]*>)$i', '<a href="http://$1"  target="_blank">$1</a> ', $str);

Now there may be occasions when you want to add the rel=nofollow attribute to your links to indicate to the search engines that you don't "trust" the link. You can simply add rel="nofollow" to the second argument.

READ MORE
...