Tải bản đầy đủ (.pdf) (27 trang)

Tài liệu 21 sai lầm chết người với lập trình PHP pptx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (584.89 KB, 27 trang )

PHP
programming
dynamic
web
for
ewreybody
21
Fatal
errors
in
programming
with
PHP

Collect
from
writ
t
ing
of
Sterling
Hughes
NGUYEN
ANH
KHOA

Class
27K0A

Department
Of


Information
Technology
1
1
1
1
Dormitory
204.B5
18:20
PM
April
7,
2006
à
i
vi
ế
t
n
à
y
d
à
nh
cho
nh

ng
l


p
tr
ì
nh
vi
ê
n
PHP
quan
t
â
m
đế
n
vi

c
tr
á
nh
nh

ng
l

i
th
ườ
ng
g


p
khi
s

d

ng
PHP.
Ng
ườ
i
đọ
c
ph

i
bi
ế
t
c
á
c
c
ú
ph
á
p
c


a
PHP,
v
à
n
ê
n
bi
ế
t
c
ô
ng
d

ng
c

a
c
á
c
h
à
m
trong
PHP.
M

t

trong
nh

ng
đ
i

m
m

nh
nh

t
c

a
PHP
v
ô
t
ì
nh
tr

th
à
nh
m


t
trong
nh

ng
đ
i

m
y
ế
u
nh

t
c

a
n
ó
:
t
t
t
t
í
í
í
í
nh

nh
nh
nh
d
d
d
d




s
s
s
s




d
d
d
d




ng
ng
ng

ng
.
Nhi
ế
u
ng
ườ
i
ch

n
PHP
v
ì
t
í
nh
d

s

d

ng,
đã
kh
ô
ng
nh


n
ra
r

ng:
s

d

ng
đú
ng
PHP
PHP
PHP
PHP
c
c
c
c
ò
ò
ò
ò
n
n
n
n
kh
kh

kh
kh
ó
ó
ó
ó
h
h
h
h
ơ
ơ
ơ
ơ
n
n
n
n
c
c
c
c
á
á
á
á
c
c
c
c

ng
ng
ng
ng
ô
ô
ô
ô
n
n
n
n
ng
ng
ng
ng




kh
kh
kh
kh
á
á
á
á
c
c

c
c
.
Trong
lo

t
b
à
i
n
à
y
s

l

n
l
ượ
t
n
ê
u
ra
21
l

i,
t


nh

ng
sai
l

m
gi
á
o
khoa
(l
à
m
script
tr

n
ê
n
ch

m
v
à
kh
ó
qu


n
l
í
)
đế
n
nh

ng
sai
l

m
ch
ế
t
ng
ườ
i
-
c
ó
th

xem
l
à
ngu

n

g

c
c

a
nh

ng
sai
l

m
s
ơ
đẳ
ng.
PH

N
1:
7
L

I
GI
Á
O
KHOA




21.
21.
21.
21.
S
S
S
S




d
d
d
d




ng
ng
ng
ng
printf()
printf()
printf()
printf()

kh
kh
kh
kh
ô
ô
ô
ô
ng
ng
ng
ng
th
th
th
th
í
í
í
í
ch
ch
ch
ch
h
h
h
h





p
p
p
p
H
à
m
printf()
d
ù
ng
để
in
d

li

u
c
ó
đị
nh
d

ng
N
ó
c

ó
th

đượ
c
d
ù
ng,
th
í
d

,
khi
b

n
m

t
in
m

t
s

ki

u
double

v

i
2
s

l

,
ho

c
trong
b

t
k
ì
t
ì
nh
hu

ng
n
à
o
b

n

mu

n
thay
đổ
i
đị
nh
d

ng
tr
ướ
c
khi
in.
Th
í
d

d
ướ
i
đâ
y
minh
ho

c
á

ch
d
ù
ng
đú
ng
c

a
printf():
đị
nh
d

ng
s

Pi
v

i
độ
ch
í
nh
x
á
c
theo
ý

mu

n
M
M
M
M
ã
ã
ã
ã
l
l
l
l




nh
nh
nh
nh
(PHP)
<?
/*
The
three
faces
of

Π
*/
printf
(
"Pi
is:
%.2f\n<br>\n"
,
M_PI
);
printf
(
"Pi
is
also:
%.3f\n<br>\n"
,
M_PI
);
printf
(
"Pi
is
also:
%.4f\n<br>\n"
,
M_PI
);
?>
Ch

Ch
Ch
Ch
ú
ú
ú
ú
ý
ý
ý
ý
.
.
.
.
T
ô
i
đã
t

ng
g

p
nh

ng
ng
ườ

i
s

d
ù
ng
printf(),
thay
v
à
o
đó
l

i
d
ù
ng
nh

ng
h
à
m
đị
nh
d

ng
t


vi
ế
t,
d
à
i
đế
n
30-
40
d
ò
ng,
trong
đ
i
m

t
c
â
u
printf()
c
ó
th

l
à

m
m

i
th

anh
ta
mong
mu

n.
Nhi
ế
u
l

p
tr
ì
nh
vi
ê
n
d
ù
ng
sai
printf():
in

c
á
c
bi
ế
n,
c
á
c
gi
á
tr

tr

v

c

a
h
à
m
ho

c
th

nh
tho


ng,
ch

l
à
d

li

u
th
ô
ng
th
ườ
ng.
Th
ườ
ng
x

y
ra
trong
hai
t
ì
nh
hu


ng:

C
â
u
l

nh
print()
th
í
ch
h

p
h
ơ
n

Hi

n
th

gi
á
tr

tr


v

c

a
m

t
h
à
m
1.
1.
1.
1.
Khi
Khi
Khi
Khi
n
n
n
n
à
à
à
à
o
o

o
o
print()
print()
print()
print()
th
th
th
th
í
í
í
í
ch
ch
ch
ch
h
h
h
h




p
p
p
p

h
h
h
h
ơ
ơ
ơ
ơ
n?
n?
n?
n?
C
á
c
l

p
tr
ì
nh
vi
ê
n
th
ườ
ng
s

d


ng
printf()
trong
khi
ch

print()
l
à
đủ
.
X
é
t
th
í
d

sau:
<?
$name
=
'Nguyen
Anh
Khoa'
;
$nghenghiep
=
'Sinh

vien'
;
$diachi
=
'Phong
204.B5

KTX

DHSP
Dong
Thap'
;
$email
=
''
;
printf
(
"Ten
cua
tui
la:
%s\n<br>\n
Hien
dang
la:
%s,
%s\n<br>\n
Lien

he
voi
toi
qua
Email:
%s\n<br>\n"
,
$name
,
$nghenghiep
,
$diachi
,
$email
);
?>
H
à
m
print()
print()
print()
print()
c
ó
th

d
ù
ng

thay
cho
printf()
nh
ư
sau:
B
PHP
programming
dynamic
web
for
ewreybody
21
Fatal
errors
in
programming
with
PHP

Collect
from
writ
t
ing
of
Sterling
Hughes
NGUYEN

ANH
KHOA

Class
27K0A

Department
Of
Information
Technology
2
2
2
2
Dormitory
204.B5
18:20
PM
April
7,
2006
print
print
print
print
"Ten
cua
tui
la:
$name

\n
\n
\n
\n
<br>
\n
\n
\n
\n
Hien
dang
la:
$nghenghiep,
$diachi
\n
\n
\n
\n
<br>
\n
\n
\n
\n
Lien
he
voi
toi
qua
Email:
$email

\n
\n
\n
\n
<br>
\n
\n
\n
\n
"
;
;
;
;
Khi
kh
ô
ng
c

n
đị
nh
d

ng
s

li


u,
d
ù
ng
print()
thay
cho
printf()
c
ó
nh

ng
l

i
í
ch
sau:

Thi
Thi
Thi
Thi
h
h
h
h
à
à

à
à
nh
nh
nh
nh
nhanh
nhanh
nhanh
nhanh
h
h
h
h
ơ
ơ
ơ
ơ
n:
n:
n:
n:
h
à
m
printf()
đị
nh
d


ng
d

li

u
c

a
b

n
tr
ướ
c
khi
hi

n
th

,
n
ó
s

ch

m
h

ơ
n
print()
ho

c
echo()

M
M
M
M
ã
ã
ã
ã
s
s
s
s
á
á
á
á
ng
ng
ng
ng
s
s

s
s




a:
a:
a:
a:
h
ã
y
xem,
d
ù
ng
h
à
m
printf()
s

l
à
m
cho
ng
ườ
i

đọ
c
h
ơ
i
b

l

n
l

n
(t

t
nhi
ê
n
tr

khi
h

c
ó
n

n
t


ng
C).
N
ó
đò
i
h

i
ki
ế
n
th

c
v

c
ú
ph
á
p
printf()
(th
í
d

,
%s

thay
cho
chu

i
c
ò
n
%d
l
à
s

)
v
à
v

ki

u
bi
ế
n
2.
2.
2.
2.
D
D

D
D
ù
ù
ù
ù
ng
ng
ng
ng
printf()
printf()
printf()
printf()
để
để
để
để
xu
xu
xu
xu




t
t
t
t

d
d
d
d




li
li
li
li




u
u
u
u
tr
tr
tr
tr




v
v

v
v




t
t
t
t




g
g
g
g




i
i
i
i
h
h
h
h

à
à
à
à
m
m
m
m
M

t
l

i
th
ườ
ng
g

p
kh
á
c
l
à
d
ù
n
printf()
để

xu

t
d

li

u
tr

v

t

g

i
h
à
m,
th
í
d

nh
ư
h
à
m
đế

m
d
ướ
i
đâ
y:
Khi
xu

t
gi
á
tr

do
h
à
m
tr

v

,
to
á
n
t

.
n

ê
n
d
ù
ng
để
n

i
trong
print(),
nh
ư
d
ướ
i
đâ
y:
D
ù
ng
to
á
n
t

.
nhanh
h
ơ

n
vi

c
d
ù
ng
printf()
20.
20.
20.
20.
Á
Á
Á
Á
p
p
p
p
d
d
d
d




ng
ng

ng
ng
sai
sai
sai
sai
ng
ng
ng
ng




ngh
ngh
ngh
ngh
ĩ
ĩ
ĩ
ĩ
a
a
a
a
(semantics)
(semantics)
(semantics)
(semantics)

Nhi

u
l

p
tr
ì
nh
vi
ê
n
s

d

ng
PHP
m
à
kh
ô
ng
bi
ế
t
đế
n
nh


ng
đ
i

m
tinh
t
ế
c

a
ng
ô
n
ng

n
à
y.
M

t
trong
nh

ng
đ
i

m

đó
l
à
s

kh
á
c
nhau
gi

a
c
ú
ph
á
p
(syntax)
v
à
ng

ngh
ĩ
a
(semantics).

C
C
C

C
ú
ú
ú
ú
ph
ph
ph
ph
á
á
á
á
p:
p:
p:
p:
nh

ng
quy
t

c
đị
nh
ngh
ĩ
a
m


t
ph

n
t

.
Th
í
d

:
d

u
$
để
tr
ướ
c
d
ù
ng
đị
nh
ngh
ĩ
a
bi

ế
n,
d
ù
ng
d

u
()
v
à
c
á
c
tham
s

đị
nh
ngh
ĩ
a
m

t
h
à
m...

Ng

Ng
Ng
Ng




ngh
ngh
ngh
ngh
ĩ
ĩ
ĩ
ĩ
a:
a:
a:
a:
nh

ng
quy
t

c
á
p
d


ng
trong
c
ú
ph
á
p.
Th
í
d

:
m

t
h
à
m
c
ó
2
bi
ế
n
đị
nh
ngh
ĩ
a
b


i
c
ú
ph
á
p
c

a
n
ó
,
hai
bi
ế
n
n
à
y
c
ó
ki

u
string
-
đó
l
à

ng

ngh
ĩ
a.
Trong
m

t
ng
ô
n
ng

l

ng
l

o
nh
ư
PHP,
b

n
c
ó
nhi


u
l

a
ch

n
để
vi
ế
t
l

nh.
C
á
c
bi
ế
n
kh
ô
ng
c

n
c
ó
ki


u
x
á
c
đị
nh...
Th
í
d

sau
m

t

p
tin
v
à
in
t

ng
d
ò
ng:
Th
í
d


tr
ê
n
s

t

o
l

i:
Warning:
Warning:
Warning:
Warning:
Supplied
Supplied
Supplied
Supplied
argument
argument
argument
argument
is
is
is
is
not
not
not

not
a
a
a
a
valid
valid
valid
valid
File-Handle
File-Handle
File-Handle
File-Handle
resource
resource
resource
resource
in
in
in
in
C:\Inetpub\wwwroot\tst.php
C:\Inetpub\wwwroot\tst.php
C:\Inetpub\wwwroot\tst.php
C:\Inetpub\wwwroot\tst.php
on
on
on
on
line

line
line
line
4.
4.
4.
4.
<?
printf
printf
printf
printf
(
"%d
occurrences
of
%s
found."
,
count
(
$truyvan
),
$search_term
);
?>
<?
print
print
print

print
count
(
$truyvan
)
.
"occurrences
of
$search_term
found."
;
?>
<?
$fp
=
@
fopen
(
'vanban.txt'
,
'r'
)
or
die
(
'Khong
the
mo
file
vanban.txt'

);
while
(
$line
=
@
fgets
(
"$fp"
,
1024
))
//
Loi
{
print
$line
;
}
@
fclose
(
"$fp"
)
//
Loi
or
die
(
'Khong

the
dong
vanban.txt'
);
?>
PHP
programming
dynamic
web
for
ewreybody
21
Fatal
errors
in
programming
with
PHP

Collect
from
writ
t
ing
of
Sterling
Hughes
NGUYEN
ANH
KHOA


Class
27K0A

Department
Of
Information
Technology
3
3
3
3
Dormitory
204.B5
18:20
PM
April
7,
2006
Đó
l
à
do
bi
ế
n
$fp
đặ
t
trong

d

u
nh
á
y
k
é
p
n
ê
n
đượ
c
chuy

n
th
à
nh
chu

i.
Th
ế
m
à
h
à
m

fopen()
nh

n
m

t
đị
nh
danh
t
à
i
nguy
ê
n
(resource
identifier)
trong
tham
s

đầ
u
c

a
n
ó
,

ch

kh
ô
ng
nh

n
m

t
chu

i.
Để
gi

i
quy
ế
t
v

n
đề
,
b

n
ch


đơ
n
gi

n
b

d

u
nh
á
y
k
é
p
đ
i
1.
1.
1.
1.
C
C
C
C
ó
ó
ó

ó
th
th
th
th




tr
tr
tr
tr
á
á
á
á
nh
nh
nh
nh
vi
vi
vi
vi




c

c
c
c
á
á
á
á
p
p
p
p
d
d
d
d




ng
ng
ng
ng
sai
sai
sai
sai
ng
ng
ng

ng




ngh
ngh
ngh
ngh
ĩ
ĩ
ĩ
ĩ
a?
a?
a?
a?
Our
example
above
generated
an
error
statement.
But
PHP
enables
you
to
customize

your
scripts
to
fit
a
unique
scenario
or
output
requirement.
So,
it
is
at
least
theoretically
possible
to
"get
away"
with
misapplying
a
semantic.
T
ô
i
kh
ô
ng

hi

u,
nh
ư
ng
d

ch
t
h
ế
n
à
y
đượ
c
kh
ô
ng?
Th
í
d

tr
ê
n
c

a

ch
ú
ng
ta
t

o
ra
m

t
th
ô
ng
b
á
o
l

i.
Nh
ư
ng
PHP
cho
ph
é
p
b


n
tu

bi
ế
n
c
á
c
script
để
th
í
ch
h

p
v

i
m

t
k

ch
b

n
kh

á
c
th
ườ
ng
ho

c
v

i
c
á
c
đò
i
h

i
c

a
th
ô
ng
tin
ra.
Do
đó
,

í
t
nh

t
tr
ê
n
l
í
thuy
ế
t,
b

n
c
ó
kh

n
ă
ng
tr
á
nh
vi

c
á

p
d

ng
sai
ng

ngh
ĩ
a.
V

y,
b

n
c

n
bi
ế
t
nh

ng
h

u
qu


c
ó
th

c
ó
(possible
outcomes)
n
ế
u
b

n
quy
ế
t
đị
nh
h

c
v

ng

ngh
ĩ
a.
Á

p
d

ng
sai
d

n
đế
n
nh

ng
l

i
kh
á
tinh
vi
n
ế
u
b

n
kh
ô
ng
ch

ú
ý
.
N
ế
u
b

n
mu

n
tu

bi
ế
n
script,
b

n
c

n
hi

u
nh

ng

ch

đề
ch
í
nh
sau:

Ki
Ki
Ki
Ki




u:
u:
u:
u:
trong
PHP,
m

i
bi
ế
n
c
ó

m

t
ki

u
x
á
c
đị
nh

m

t
th

i
đ
i

m
x
á
c
đị
nh,
cho
d
ù

b

n
c
ó
th

t

do
chuy

n
đổ
i
ki

u
m

t
bi
ế
n.
N
ó
i
m

t

c
á
ch
kh
á
c,
kh
ô
ng
c
ó
bi
ế
n
n
à
o
l

i
kh
ô
ng
k
è
m
theo
t
í
nh

ch

t
c

a
ki

u
c

a
n
ó
.
PHP
c
ó
7
ki

u
c
ơ
b

n:
boolean,
resource,
integer,

doubl
e,
string,
array
v
à
object.

T
T
T
T




m
m
m
m
v
v
v
v




c:
c:

c:
c:
trong
PHP,
m

i
bi
ế
n
c
ó
m

t
t

m
v

c
ri
ê
ng.
T

m
v

c

bi
ế
n
quy
đị
nh
bi
ế
n
c
ó
th

đượ
c
truy
c

p
t

đâ
u,
t

n
t

i
trong

th

i
gian
n
à
o.
Hi

u
sai
kh
á
i
ni

m
c
ơ
b

n
v

"t

m
v

c"

d

n
đế
n
nh

ng
l

i
sai
tinh
t
ế
v
à
c

nh

ng
l

i
l

n.

php.ini:

php.ini:
php.ini:
php.ini:
khi
vi
ế
t
m

t
script
ch

y

nhi

u
m
ô
i
tr
ườ
ng
kh
á
c
nhau,
c


n
bi
ế
t
r

ng
kh
ô
ng
ph

i
m

i
c

u
h
ì
nh
PHP
đề
u
nh
ư
nhau.
Do
đó

,
c

n
thi
ế
t
nh

ng
l

nh
ki

m
tra
để
đả
m
b

o
script
c

a
b

n

ch

y
t

t
trong
c

u
h
ì
nh
PHP
c

a
ng
ườ
i
kh
á
c.
19.
19.
19.
19.
Thi
Thi
Thi

Thi
ế
ế
ế
ế
u
u
u
u
ghi
ghi
ghi
ghi
ch
ch
ch
ch
ú
ú
ú
ú
Theo
ý
t
ô
i,
m
ã
ngu


n
thi
ế
u
ghi
ch
ú
l
à
c
ă
n
nguy
ê
n
c

a
s

l

p
tr
ì
nh
í
ch
k


.
N
ó
d

n
t

i
nh

ng
hi

u
ch

nh
sai
l

m,
hi

u
sai
ý
ngh
ĩ
a

v
à
l
à
m
ng
ườ
i
đọ
c
m

t
m

i.
N
ó
i
chung,
l

p
tr
ì
nh
ghi
ch
ú
(inline

documentation)
đượ
c
m

i
ng
ườ
i
kh

ng
nh

n
l
à
đ
i

u
t

t,
nh
ư
ng
hi
ế
m

khi
n
ó
t

n
t

i.
M

t
v

n
đề
kh
á
c
l
à
qu
á
nhi

u
ghi
ch
ú
.

D
ù
hi
ế
m
g

p,
nh
ư
ng
n
ó
l
à
m
cho
c
á
c
đ
o

n
m
ã
b

c


t
v

n,
g
â
y
ra
s

kh
ó
theo
d
õ
i.
D
ướ
i
đâ
y
l
à
m

t
th
í
d


:
<?
//
Bat
dau
ma
PHP
$age
=
18
;
//
Gan
18
den
$age
$age
++;
//
Tang
$age
len
1
don
vi
//
IN
ra
doan
text

thong
bao:
print
"You
are
now
19,
which
means
you
have
been:"
;
print
"\n<br>\n<br>\n"
;
//
Vong
lap
for
in
ra
tat
ca
tuoi
truoc
do
for
(
$idx

=
0
;
$idx
<
$age
;
$idx
++)
{
<?
$fp
=
@
fopen
(
'vanban.txt'
,
'r'
)
or
die
(

Khong
the
mo
file
tailieuphp.txt'
);

while
(
$line
=
@
fgets
(
$fp
,
1024
))
{
print
$line
;
}
@
fclose
(
$fp
)
or
die
(
Khong
the
dong
file
vanban.txt
'

);
?>
PHP
programming
dynamic
web
for
ewreybody
21
Fatal
errors
in
programming
with
PHP

Collect
from
writ
t
ing
of
Sterling
Hughes
NGUYEN
ANH
KHOA

Class
27K0A


Department
Of
Information
Technology
4
4
4
4
Dormitory
204.B5
18:20
PM
April
7,
2006
//
In
ra
tuoi
ca
nhan
print
"$idx
years
old
\n
<br>
\n
"

;
}
/
/
Ket
thuc
ma
PHP
?
>
1.
1.
1.
1.
Bao
Bao
Bao
Bao
nhi
nhi
nhi
nhi
ê
ê
ê
ê
u
u
u
u

ghi
ghi
ghi
ghi
ch
ch
ch
ch
ú
ú
ú
ú
th
th
th
th
ì
ì
ì
ì
đủ
đủ
đủ
đủ
?
?
?
?
Nhi
ế

u
đế
n
m

c
n
à
o,
đ
i

u
đó
tu

thu

c
ng
â
n
s
á
ch
c

a
b


n,
v
à
o
ch
í
nh
s
á
ch
c

a
c
ô
ng
ty
v
à
v
à
o
độ
ph

c
t

p
c


a
ch
ươ
ng
tr
ì
nh.
Tuy
nhi
ê
n,
c
ũ
ng
c
ó
m

t
v
à
i
g

i
ý
cho
b


n

Lu
ô
n
c
ó
m

t
m
ô
t

ng

n
v

m

c
đí
ch
c

a
h
à
m

ngay
tr
ướ
c
đị
nh
ngh
ĩ
a
c

a
h
à
m
đó

Th
ê
m
ghi
ch
ú
v
à
o
nh

ng
ch


c
ó
th

b

hack,
ho

c
nh

ng
ch

t
ưở
ng
r

ng
sai
nh
ư
ng
l

i
ch


y
đú
ng

N
ế
u
m

t
đ
o

n
m
ã
n
à
o
đó
c
ó
th

g
â
y
nh


m
l

n,
h
ã
y
th
ê
m
m

t
í
t
ghi
ch
ú
v

m

c
đí
ch
c

a
đ
o


n
đó
.
Sau
n
à
y
b

n
s

th

y
đượ
c
l

i
í
ch
c

a
n
ó

D

ù
ng
m

t
ki

u
ghi
ch
ú
nh

t
qu
á
n,
/*
/*
/*
/*
*/
*/
*/
*/
ho

c
l
à

//
//
//
//
(tr
(tr
(tr
(tr
á
á
á
á
nh
nh
nh
nh
d
d
d
d
ù
ù
ù
ù
ng
ng
ng
ng
#)
#)

#)
#)
D
ướ
i
đâ
y
l
à
m

t
th
í
d

v

ghi
ch
ú
t

t:
<?
//
Random_Numbers.lib
//
Generate
different

types
of
random
numbers.
mt_srand
((double)
microtime
()*
1000000
);
//
mixed
random_element(array
elements[,
array
weights])
//
Extract
a
random
element
from
elements.
Weights
is
//
the
relative
probability
that

each
element
will
be
//
selected.
function
random_element
(
$elements
,
$weights
=array())
{
//
There
must
be
exactly
the
same
amount
of
elements
as
//
there
are
weights
for

this
algorithm
to
work
properly
if
(
count
(
$weights
)
==
count
(
$elements
))
{
foreach
(
$elements
as
$element
)
{
foreach
(
$weights
as
$idx
)

{
//
Note:
we
don't
use
$idx,
since
we
//
don't
want
to
override
elements.
$randomAr
[]
=
$element
;
}
}
}
else
{
$randomAr
=
$elements
;
}

$random_element
=
mt_rand
(
0
,
count
(
$randomAr
)-
1
);
return
$randomAr
[
$random_element
];
}
?>
18.
18.
18.
18.
Nhi
Nhi
Nhi
Nhi





u
u
u
u
bi
bi
bi
bi
ế
ế
ế
ế
n,
n,
n,
n,
t
t
t
t




n
n
n
n
nhi

nhi
nhi
nhi




u
u
u
u
th
th
th
th




i
i
i
i
gian
gian
gian
gian
C
ó
v

à
i
ng
ườ
i
b

á
m

nh
b

i
bi
ế
n
trung
gian.
T
ô
i
kh
ô
ng
th

hi

u

n

i
t

i
sao
ai
đó
c
ó
th

vi
ế
t
nh
ư
th
ế
n
à
y:
PHP
programming
dynamic
web
for
ewreybody
21

Fatal
errors
in
programming
with
PHP

Collect
from
writ
t
ing
of
Sterling
Hughes
NGUYEN
ANH
KHOA

Class
27K0A

Department
Of
Information
Technology
5
5
5
5

Dormitory
204.B5
18:20
PM
April
7,
2006
T

i
sao
ph

i
d
ù
ng
bi
ế
n
trung
gian?
N
ó
kh
ô
ng
c

n

thi
ế
t
R

i
thay,
c
ó
v

nh
ư
r

t
nhi

u
ng
ườ
i
kh
ó
b

đượ
c
th
ó

i
quen
x

u
n
à
y.
Bi
ế
n
t

m
l
à
m
ch

m
th

i
gian
thi
h
à
nh
ch
ươ

ng
t
ì
nh
c

a
b

n.
T

t
h
ơ
n
l
à
n
ê
n
b

qua
đó
v
à
g

p

c
á
c
l

i
g

i
h
à
m
v

i
nhau.
Nh

ng
ng
ườ
i
d
ù
ng
bi
ế
n
t


m
th
ườ
ng
l
à
m
ch
ươ
ng
c

a
h

ch

y
ch

m
đế
n
25%.
M

t
l
í
do

kh
á
c
để
tr
á
nh
c
ó
qu
á
nhi

u
bi
ế
n
t

m
l
à
v
ì
tr
ô
ng
n
ó
kh

ô
ng
đượ
c
đẹ
p
m

t.
Trong
hai
th
í
d

tr
ê
n,
th
í
d

n
à
o
s
ú
c
t
í

ch
h
ơ
n?
Th
í
d

n
à
o
l
à
m
con
m

t
d

ch

u
h
ơ
n?
D
ù
ng
qu

á
nhi

u
bi
ế
n
t

m
c
ó
th

d

n
đế
n
m
ã
ch
ươ
ng
tr
ì
nh
kh
ó
đọ

c
v
à
kh
ô
ng
s
ú
c
t
í
ch.
1.
1.
1.
1.
L
L
L
L




i
i
i
i
đ
đ

đ
đ
i
i
i
i




m
m
m
m
c
c
c
c




a
a
a
a
d
d
d
d

ù
ù
ù
ù
ng
ng
ng
ng
bi
bi
bi
bi
ế
ế
ế
ế
n
n
n
n
t
t
t
t




m
m

m
m
C
á
c
bi
ế
n
t

m
c
ó
l

i
trong
vi

c
thay
th
ế
c
á
c
h
à
m
hay

bi

u
th

c
d
à
i
l
ê
th
ê
.
N
ó
c
ó
vai
tr
ò
nh
ư
b
í
danh
gi

.
Đ

i

u
n
à
y
đặ
c
bi

t
đú
ng
khi
b

n
d
ù
ng
m

t
h
à
m
hay
bi

u

th

c
nhi

u
l

n.
Xem
x
é
t
th
í
d

đâ
y,
n
ó
kh
ô
ng
d
ù
ng
nhi

u

bi
ế
n
h
ơ
n
m

c
t

i
thi

u
N

i
dung
trong
h
à
m
implode()
d
à
i
v
à
do

đó
kh
ó
đọ
c.
D
ù
ng
m

t
ho

c
nhi

u
bi
ế
n
t

m
c
ó
th

gi
ú
p

ch
ú
ng
ta:
2.
2.
2.
2.
C
C
C
C
á
á
á
á
c
c
c
c
lu
lu
lu
lu




t
t

t
t
chung
chung
chung
chung
c
c
c
c




a
a
a
a
ng
ng
ng
ng
ó
ó
ó
ó
n
n
n
n

tay
tay
tay
tay
c
c
c
c
á
á
á
á
i
i
i
i
Khi
quy
ế
t
đị
nh
c
ó
d
ù
ng
bi
ế
n

t

m
ho

c
kh
ô
ng,
b

n
n
ê
n
suy
ngh
ĩ
v

2
c
â
u
h

i:

B


n
c
ó
d
ù
ng
bi
ế
n
đó
í
t
nh

t
hai
l

n?

T
í
nh
đọ
c
đượ
c
c

a

m
ã
c
ó
t
ă
ng
đá
ng
k

kh
ô
ng?
N
ế
u
í
t
nh

t
m

t
c
â
u
tr


l

i
l
à
c
ó
,
th
ì
n
ê
n
d
ù
ng
bi
ế
n
t

m.
C
ò
n
kh
ô
ng,
v


t
n
ó
đ
i
v
à
t

h

p
c
á
c
h
à
m
l

i
(n
ế
u
c

n).
17.
17.
17.

17.
Vi
Vi
Vi
Vi
ế
ế
ế
ế
t
t
t
t
l
l
l
l




i
i
i
i
c
c
c
c
á

á
á
á
c
c
c
c
h
h
h
h
à
à
à
à
m
m
m
m
c
c
c
c
ó
ó
ó
ó
s
s
s

s




n
n
n
n
M

t
s

n
ơ
i
ph

bi
ế
n
m
ã
ngu

n
c
á
c

script
PHP
ch

tr
ươ
ng
đổ
i
t
ê
n
c
á
c
h
à
m
s

n
c
ó
để
t

o
s

d


d
à
ng
cho
c
á
c
l

p
tr
ì
nh
vi
ê
n
chuy

n
t

VB
sang.
Th
í
d

:
<?

$tmp
=
date
(
"F
d,
h:i
a"
);
/*
ie
January
3,
2:30
pm
*/
print
$tmp
;
?>
<?
print
date
(
"F
d,
h:i
a"
);
?>

//
string
reverse_characters(string
str)
//
Reverse
all
of
the
characters
in
a
string.
function
reverse_characters
(
$str
)
{
return
implode
(
""
,
array_reverse
(
preg_split
(
"//"
,

$str
)));
}
//
string
reverse_characters(string
str)
//
Reverse
all
of
the
characters
in
a
string.
function
reverse_characters
(
$str
)
{
$characters
=
preg_split
(
"//"
,
$str
);

$characters
=
array_reverse
(
$characters
);
return
implode
(
""
,
$characters
);
}
<?
function
len
(
$str
)
{
PHP
programming
dynamic
web
for
ewreybody
21
Fatal
errors

in
programming
with
PHP

Collect
from
writ
t
ing
of
Sterling
Hughes
NGUYEN
ANH
KHOA

Class
27K0A

Department
Of
Information
Technology
6
6
6
6
Dormitory
204.B5

18:20
PM
April
7,
2006
L

i
c
ó
m

t
s

ng
ườ
i
c

g

ng
vi
ế
t
l

i
c

á
c
h
à
m
PHP
th
ô
ng
d

ng
thay
v
ì
đ
i
h

c
v

h
à
m
đó
trong
c
á
c

t
à
i
li

u
PHP
cung
c

p.
C
ó
í
t
nh

t
2
l
í
do
để
kh
ô
ng
n
ê
n
l

à
m
đ
i

u
n
à
y.
Th

nh

t,
v
à
tr
ê
n
nh

t,
n
ó
l
à
m
cho
nh


ng
ng
ườ
i
đọ
c
(v
à
s

a)
ch
ươ
ng
tr
ì
nh
c

a
b

n
kh
ó
hi

u
v
à

c

m
th

y
c
ó
qu
á
nhi

u
h
à
m
d
ư
th

a.
H

t

h

i
t


i
sao
b

n
l

i
đ
i
đị
nh
ngh
ĩ
a
h
à
m
theo
ki

u
đó
,
thay
v
ì
s

d


ng
c
á
c
h
à
m
đị
nh
ngh
ĩ
a
s

n
b

i
PHP.
Th

hai,
đị
nh
ngh
ĩ
a
h
à

m
nh
ư
v

y
c
ũ
ng
s

l
à
m
ch

m
ch
ươ
ng
tr
ì
nh
c

a
b

n
(m


t
c
á
ch
kh
ô
ng
c

n
thi
ế
t).
Kh
ô
ng
ch

ph

i
x

l
í
nhi

u
m

ã
h
ơ
n,
m
à
m

i
l

n
g

i
h
à
m
do
b

n
đị
nh
ngh
ĩ
a,
b

n

đã
t

n
th

i
gian
cho
ch
í
nh
h
à
m
đó
,
tr
ướ
c
khi
h
à
m
nguy
ê
n
thu

đượ

c
g

i.
1.
1.
1.
1.
Tr
Tr
Tr
Tr
á
á
á
á
nh
nh
nh
nh
vi
vi
vi
vi
ế
ế
ế
ế
t
t

t
t
l
l
l
l




i
i
i
i
c
c
c
c
á
á
á
á
c
c
c
c
h
h
h
h

à
à
à
à
m
m
m
m
c
c
c
c
ó
ó
ó
ó
s
s
s
s




n
n
n
n
H
ã

y
đươ
ng
đầ
u
v

i
n
ó
.
Đô
i
khi
th

t
l
à
kh
ó
để
tr
á
nh
chuy

n
n
à

y.
Tr
ướ
c
ti
ê
n,
m

t
l

p
tr
ì
nh
vi
ê
n
kh
ô
ng
th

theo
k

p
c
á

c
h
à
m
c

a
PHP
ngay
đượ
c.
V
à
ai
c
ó
th

i
gian
m
à
tra
c

u.
T

i
sao

kh
ô
ng
vi
ế
t
l

i
cho
kho

?
C
á
ch
l
à
m
c

a
t
ô
i
l
à
lu
ô
n

c
ó
s

n
m

t
t
à
i
li

u
ch

d

n
PHP
(
PHP
manual
)
m

i
khi
vi
ế

t
ch
ươ
ng
tr
ì
nh
(t
á
c
gi

b
à
i
n
à
y
d
ù
ng
m

t
b

n
PDF
c
ó

t

o
ch

m

c,
ri
ê
ng
t
ô
i,
ng
ườ
i
d

ch,
th
ì
d
ù
ng
m

t
t
à

i
li

u
CHM
đầ
y
đủ
th
ô
ng
tin
v
à
c
ó
c

g
ó
p
ý
c

a
ng
ườ
i
s


d

ng
m
à
b

n
c
ó
th

l

y

/>.
Sau
đó
,
m

i
khi
đị
nh
vi
ế
t
m


t
h
à
m
m

r

ng
cho
PHP,
t
ô
i
đọ
c
l
ướ
t
qua
t
à
i
li

u
để
xem
h

à
m
đó
c
ó
ch
ư
a.
Tuy
nhi
ê
n,
c

n
ch
ú
ý
l
à
,
do
b

n
ch

t
m
ã

ngu

n
m

c

a
PHP,
b

n
c
ó
th

t
ì
m
đượ
c
c
á
c
h
à
m
do
ng
ườ

i
d
ù
ng
đị
nh
ngh
ĩ
a
tr
ướ
c
khi
n
ó
đượ
c
th
ê
m
v
à
o
PHP
(th
í
d

nh
ư

h
à
m
t
ì
m
ph

n
t

kh
á
c
nhau
gi

a
hai
m

ng).
Đ
i

u
n
à
y
kh

ô
ng
c
ó
ngh
ĩ
a
l
à
b

n
ph

i
hi

u
ch

nh
l

i
m
ã
(This
doesn't
necessarily
mean

that
you
should
have
to
correct
the
code.
-
don't
understand)
16.
16.
16.
16.
Kh
Kh
Kh
Kh
ô
ô
ô
ô
ng
ng
ng
ng
t
t
t

t
á
á
á
á
ch
ch
ch
ch
bi
bi
bi
bi




t
t
t
t
ph
ph
ph
ph




n

n
n
n
server
server
server
server
v
v
v
v
à
à
à
à
client
client
client
client
V
à
i
l

p
tr
ì
nh
vi
ê

n
c

k
ế
t
n

i
c

ch
ươ
ng
tr
ì
nh
v

i
nhau,
ngh
ĩ
a
l
à
gh
é
p
chung

m
ã
HTML
(client-side
-
ph

n
kh
á
ch)
v

i
m
ã
PHP
(server-side
-
ph

n
ch

)
v
à
o
trong
m


t
t

p
tin
l

n.
M

c
d
ù
đ
i

u
n
à
y
t

t
cho
c
á
c
site
nh


,
nh
ư
ng
n
ó
c
ó
th

tr

th
à
nh
v

n
đề
l

n
khi
c
á
c
site
đó
tr


n
ê
n
l

n
h
ơ
n
v
à
đượ
c
b

sung
th
ê
m
t
í
nh
n
ă
ng.
L

p
tr

ì
nh
theo
c
á
ch
n
à
y
l
à
m
n

y
sinh
v

n
đề
kh
ó
b

o
tr
ì
v
à
c

á
c
t

p
tin
tr

n
ê
n
c

ng
k

nh.
1.
1.
1.
1.
H
H
H
H
à
à
à
à
m

m
m
m
API
API
API
API
Khi
mu

n
t
á
ch
bi

t
ph

n
kh
á
ch
-
ch

,
b

n

c
ó
v
à
i
l

a
ch

n.
M

t
c
á
ch
l
à
vi
ế
t
nh

ng
h
à
m
hi


n
th

n

i
dung
linh
độ
ng
v
à
đặ
t
ch
ú
ng
đú
ng
ch

trong
trang
web.
Th
í
d

d
ướ

i
đâ
y
minh
ho

đ
i

u
n
à
y:
index.php
index.php
index.php
index.php
-
ph

n
kh
á
ch
return
strlen
(
$str
);
}

?>
HTML
HTML
HTML
HTML
<
?php
include_once
("site.lib");
?>
<
html
>
<
head
>
<
title
>
<?php
print_header
();
?>
<
/title
>
<
/head
>
<

body
>
<
h1
>
<
?php
print_header
();
?
>
<
/h1
>
<
table
border
="
0
"
cellpadding="
0
"
cellspacing="
0
">
<
tr
>
PHP

programming
dynamic
web
for
ewreybody
21
Fatal
errors
in
programming
with
PHP

Collect
from
writ
t
ing
of
Sterling
Hughes
NGUYEN
ANH
KHOA

Class
27K0A

Department
Of

Information
Technology
7
7
7
7
Dormitory
204.B5
18:20
PM
April
7,
2006
site.lib
site.lib
site.lib
site.lib
-
ph

n
ch

Nh
ư
b

n
th


y
trong
th
í
d

tr
ê
n,
t
á
ch
bi

t
kh
á
ch
ch

l
à
m
t
ă
ng
t
í
nh
d


đọ
c
trong
ch
ươ
ng
tr
ì
nh
c

a
b

n.
M

t
l

i
í
ch
kh
á
c
l
à
m


t
khi
b

n
đã
c
ó
c
á
c
h
à
m
API
hi

n
th

n

i
dung,
b

n
c
ó

th

để
cho
thi
ế
t
k
ế
vi
ê
n
tham
gia
thay
đổ
i
b

c

c
m
à
kh
ô
ng
c

n

s

a
m
ã
ch
ươ
ng
t
r
ì
nh.
1.1.
1.1.
1.1.
1.1.
L
L
L
L




i
i
i
i
í
í

í
í
ch
ch
ch
ch
c
c
c
c




a
a
a
a
h
h
h
h
à
à
à
à
m
m
m
m

API
API
API
API

T
ươ
ng
đố
i
s
á
ng
s

a

Nhanh,
h

u
nh
ư
kh
ô
ng
l
ã
ng
ph

í
th

i
gian
(overhead)
1.2.
1.2.
1.2.
1.2.
B
B
B
B




t
t
t
t
l
l
l
l





i
i
i
i
<
td
width
="
25%
">
<
?php
print_links
();
?
>
<
/td
>
<
td
>
<
?php
print_body
();
?
>
<
/td

>
<
/tr
>
<
/table
>
<
/body
>
<
/html
>
<?php
$dbh
=
mysql_connect
(
"localhost"
,
"khoa"
,
"pass"
)
or
die
(
sprintf
(
"Khong

the
ket
noi
den
MySQL
[%s]:
%s"
,
mysql_errno
(),
mysql_error
()));
@
mysql_select_db
(
"MainSite"
)
or
die
(
sprintf
(
"Khong
the
chon
CSDL![%s]:
%s"
,
mysql_errno
(),

mysql_error
()));
$sth
=
@
mysql_query
(
"SELECT
*
FROM
site"
,
$dbh
)
or
die
(
sprintf
(
"Khong
the
thuc
hien
truy
van
[%s]:
%s"
,
mysql_errno
(),

mysql_error
()));
$site_info
=
mysql_fetch_object
(
$sth
);
function
print_header
()
{
global
$site_info
;
print
$site_info
->
header
;
}
function
print_body
()
{
global
$site_info
;
print
nl2br

(
$site_info
->
body
);
}
function
print_links
()
{
global
$site_info
;
$links
=
explode
(
"\n"
,
$site_info
->
links
);
$names
=
explode
(
"\n"
,
$site_info

->
link_names
);
for
(
$i
=
0
;
$i
<
count
(
$links
);
$i
++)
{
print
"
\t\t\t
<a
xhref=
\"
$links
[
$i
]\"
>$names
[

$i
]
</a>
\n
<br>
\n
"
;
}
}
?>
PHP
programming
dynamic
web
for
ewreybody
21
Fatal
errors
in
programming
with
PHP

Collect
from
writ
t
ing

of
Sterling
Hughes
NGUYEN
ANH
KHOA

Class
27K0A

Department
Of
Information
Technology
8
8
8
8
Dormitory
204.B5
18:20
PM
April
7,
2006

Kh
ô
ng
s

á
ng
s

a
v
à
d

d
à
ng
b

ng
h

th

ng
m

u
(template
system)

C

n
m


t
í
t
ki
ế
n
th

c
PHP
để
s

a
m

u
2.
2.
2.
2.
H
H
H
H





th
th
th
th




ng
ng
ng
ng
khu
khu
khu
khu
ô
ô
ô
ô
n
n
n
n
m
m
m
m





u
u
u
u
M

t
c
á
ch
kh
á
c
để
t
á
ch
bi

t
kh
á
ch
ch

l
à
d

ù
ng
h

th

ng
khu
ô
n
m

u.
Ngh
ĩ
a
l
à
,
c
ó
m

t
s

đá
nh
d


u
n

i
dung
sau
đó
d
ù
ng
ch
ươ
ng
tr
ì
nh
ph
â
n
t
í
ch,
thay
th
ế
c
á
c
đá
nh

d

u
đó
b

ng
th
ô
ng
tin
c

n
thi
ế
t.
Th
í
d

,
b

n
c
ó
th

t


o
m

t
t

p
tin
nh
ư
th
ế
n
à
y:
Sau
đó
c
ó
th

vi
ế
t
ch
ươ
ng
tr
ì

nh
ph
â
n
t
á
ch
t

p
tin,
thay
th
ế
c
á
c
th
ô
ng
tin
trong
d

u
c
á
ch
%%
b


ng
c
á
c
th
ô
ng
tin
th
í
ch
h

p.
Ghi
ch
ú
:
m

t
l

p
h

tr

h


th

ng
khu
ô
n
m

u
kh
á
t

t
l
à
l

p
FastTemplate,
c
ó

www.thewebmasters.net
2.1.
2.1.
2.1.
2.1.
Ư

Ư
Ư
Ư
u
u
u
u
đ
đ
đ
đ
i
i
i
i




m
m
m
m
c
c
c
c





a
a
a
a
h
h
h
h




th
th
th
th




ng
ng
ng
ng
khu
khu
khu
khu
ô

ô
ô
ô
n
n
n
n
m
m
m
m




u
u
u
u

R

t
trong
s
á
ng

Kh
ô

ng
c

n
ki
ế
n
th

c
PHP
để
s

a
khu
ô
n
m

u
2.2.
2.2.
2.2.
2.2.
Nh
Nh
Nh
Nh
ượ

ượ
ượ
ượ
c
c
c
c
đ
đ
đ
đ
i
i
i
i




m
m
m
m

Ch

m
h
ơ
n,

b

n
c

n
ph
â
n
t
á
ch
t

p
tin
khu
ô
n
m

u,
sau
đó
xu

t
ra

Vi


c
hi

n
th

c
ph

c
t

p
h
ơ
n
15.
15.
15.
15.
D
D
D
D
ù
ù
ù
ù
ng

ng
ng
ng
c
c
c
c
á
á
á
á
c
c
c
c
c
c
c
c




u
u
u
u
tr
tr
tr

tr
ú
ú
ú
ú
c
c
c
c
l
l
l
l




i
i
i
i
th
th
th
th




i

i
i
i
C
ó
nhi

u
ng
ườ
i
c

d
ù
ng
m
ã
i
c
á
c
m
ã
v
à
th
ư
vi


n
l

i
th

i.
Th
í
d

nh
ư
h

đã
vi
ế
t
m

t
h
à
m
d
ù
ng

PHP

2,
v
à
v

n
c
ò
n
d
ù
ng
n
ó

PHP
4,
m

c
d
ù
m

t
h
à
m
c
ó

c
ù
ng
m

c
đí
ch
nh
ư
th
ế
đã
đượ
c
th
ê
m
v
à
o

PHP
3
D
ù
ng
c
á
c

c

u
tr
ú
c
l

i
th

i
c
ó
th

l
à
m
ch

m
ch
ươ
ng
tr
ì
nh
c


a
b

n,
c
ũ
ng
nh
ư
l
à
m
cho
n
ó
tr

n
ê
n
kh
ó
hi

u.
Ng
ườ
i
đọ
c

c
á
c
ch
ươ
ng
tr
ì
nh
c

a
b

n
c
ó
th

kh
ô
ng
quen
v

i
c
á
c
h

à
m
l

i
th

i
c

a
PHP.
Tuy
nhi
ê
n,
khi
ph
á
t
hi

n
m

t
đ
o

n

m
ã
l

c
h

u,
b

n
đừ
ng
ngh
ĩ
r

ng
c

n
ph

i
thay
th
ế
n
ó
.

Ch

c

n
ch

c
ch

n
r

ng
b

n
s

kh
ô
ng
d
ù
ng
n
ó
cho
c
á

c
ch
ươ
ng
tr
ì
nh
vi
ế
t
trong
t
ươ
ng
lai.
M

t
th
í
d

v

c

u
tr
ú
c

l

i
th

i,
m
à
nhi

u
ng
ườ
i
c
ó
v

c

n

m
l

y,
l
à
c
ú

ph
á
p
beginControlStructure
beginControlStructure
beginControlStructure
beginControlStructure
..
..
..
..
endControlStructure
endControlStructure
endControlStructure
endControlStructure
;
HTML
HTML
HTML
HTML
<
html
>
<
head
>
<
title
>%%PAGE_TITLE%%<
/title

>
<
/head
>
<
body
%%BODY_PROPERTIES%%
>
<
h1
>%%PAGE_TITLE%%<
/h1
>
<
table
border
="
0
"
cellpadding="
0
"
cellspacing="
0
">
<
tr
>
<
td

width
="
25%
">%%PAGE_LINKS%%<
/td
>
<
td
>%%PAGE_CONTENT%%<
/td
>
<
/tr
>
<
/table
>
<
/body
>
<
/html
>
<?
PHP
programming
dynamic
web
for
ewreybody

21
Fatal
errors
in
programming
with
PHP

Collect
from
writ
t
ing
of
Sterling
Hughes
NGUYEN
ANH
KHOA

Class
27K0A

Department
Of
Information
Technology
9
9
9

9
Dormitory
204.B5
18:20
PM
April
7,
2006
Đâ
y
l
à
m

t
th
ó
i
quen
x

u
v
ì

N
ó
kh
ô
ng

đượ
c
d
ù
ng
r

ng
r
ã
i,
cho
n
ê
n
nhi

u
ng
ườ
i
h

c
s

b

l


n
l

n
gi

a
hai
c
ú
ph
á
p

N
ó
kh
ô
ng
t
ươ
ng
th
í
ch
v

i
ng
ô

n
ng

kh
á
c,
ngh
ĩ
a
l
à
n
ó
tr

n
ê
n
kh
ó
đọ
c
đố
i
v

i
nh

ng

ng
ườ
i
trong
giai
đ
o

n
qu
á
độ
(m

i
chuy

n
t

m

t
ng
ô
n
ng

n
à

o
đó
sang
PHP)

Quan
tr

ng
nh

t,
l
à
m

t
ng
à
y
n
à
o
đó
t
í
nh
n
ă
ng

n
à
y
s

b

xo
á
x

,
b

t
bu

c
b

n
ph

i
vi
ế
t
l

i

to
à
n
b

m
ã
c
ó
d
ù
ng
n
ó
.
D

u
ngo

c
nh

n
lu
ô
n
lu
ô
n

l
à
m

t
ph

n
c

a
ng
ô
n
ng

PHP.

tr
ê
n
ch

l
à
m

t
th
í

d

v

c

u
tr
ú
c
l

i
th

i.
N
ó
c
ò
n
nhi

u
n

a.
Nh
ư
m


t
quy
t

c,
b

n
n
ê
n
theo
nh

ng
c
á
c
vi
ế
t
trong
t
à
i
li

u
PHP.

H

u
h
ế
t
n
ó
đượ
c
c

p
nh

t
m

i.
N
ó
c
ũ
ng
d
ù
ng
c
á
c

h
à
m
m

i
nh

t
c

a
PHP
trong
th
í
d

c

a
m
ì
nh.
N
ê
n
th
ườ
ng

xuy
ê
n
ki

m
tra
t
à
i
li

u
khi
b

n
c
ó
ý
mu

n
m

r

ng
t
í

nh
n
ă
ng
n
à
o
đó
c

a
PHP.
Theo
c
á
ch
n
à
y,
b

n
s

kh
ô
ng
ph

i

vi
ế
t
l

i
c
á
c
h
à
m
c
ó
s

n.
T
T
T
T




ng
ng
ng
ng
k

k
k
k
ế
ế
ế
ế
t
t
t
t
Trong
b
à
i
n
à
y
b

n
đã
đ
i
qua
7
tr
ê
n
t


ng
s

21
l

i
m
à
l

p
tr
ì
nh
vi
ê
n
PHP
m

c
ph

i.
Nh

ng
l


i
gi
á
o
khoa
n
à
y
bao
g

m:




S
S
S
S




d
d
d
d





ng
ng
ng
ng
sai
sai
sai
sai
h
h
h
h
à
à
à
à
m
m
m
m
printf()
printf()
printf()
printf()





Á
Á
Á
Á
p
p
p
p
d
d
d
d




ng
ng
ng
ng
sai
sai
sai
sai
ng
ng
ng
ng





ngh
ngh
ngh
ngh
ĩ
ĩ
ĩ
ĩ
a
a
a
a




Thi
Thi
Thi
Thi
ế
ế
ế
ế
u
u
u

u
t
t
t
t
à
à
à
à
i
i
i
i
li
li
li
li




u
u
u
u
trong
trong
trong
trong
m

m
m
m
ã
ã
ã
ã
ngu
ngu
ngu
ngu




n
n
n
n




D
D
D
D
ù
ù
ù

ù
ng
ng
ng
ng
qu
qu
qu
qu
á
á
á
á
nhi
nhi
nhi
nhi




u
u
u
u
bi
bi
bi
bi
ế

ế
ế
ế
n
n
n
n
t
t
t
t




m
m
m
m




Vi
Vi
Vi
Vi
ế
ế
ế

ế
t
t
t
t
l
l
l
l




i
i
i
i
c
c
c
c
á
á
á
á
c
c
c
c
h

h
h
h
à
à
à
à
m
m
m
m
c
c
c
c
ó
ó
ó
ó
s
s
s
s




n
n
n

n




Kh
Kh
Kh
Kh
ô
ô
ô
ô
ng
ng
ng
ng
t
t
t
t
á
á
á
á
ch
ch
ch
ch
bi

bi
bi
bi




t
t
t
t
ph
ph
ph
ph




n
n
n
n
kh
kh
kh
kh
á
á
á

á
ch/ch
ch/ch
ch/ch
ch/ch








D
D
D
D
ù
ù
ù
ù
ng
ng
ng
ng
c
c
c
c
á

á
á
á
c
c
c
c
c
c
c
c




u
u
u
u
tr
tr
tr
tr
ú
ú
ú
ú
c
c
c

c
l
l
l
l




i
i
i
i
th
th
th
th




i
i
i
i
//
Bad/Outdated
Practice
while
(

1
):
print
"5"
;
if
(
$idx
++
==
5
):
break;
endif;
endwhile;
//
Better
Practice
//
(the
code
could
be
optimized
though)
while
(
1
)
{

print
"5"
;
if
(
$idx
++
==
5
)
{
break;
}
}
?>
PHP
programming
dynamic
web
for
ewreybody
21
Fatal
errors
in
programming
with
PHP

Collect

from
writ
t
ing
of
Sterling
Hughes
NGUYEN
ANH
KHOA

Class
27K0A

Department
Of
Information
Technology
10
10
10
10
Dormitory
204.B5
18:20
PM
April
7,
2006
PH


N
2

L

I
NGHI
Ê
M
TR

NG












14.
14.
14.
14.
Kh

Kh
Kh
Kh
ô
ô
ô
ô
ng
ng
ng
ng
tu
tu
tu
tu
â
â
â
â
n
n
n
n
th
th
th
th





c
c
c
c
á
á
á
á
c
c
c
c
quy
quy
quy
quy
ướ
ướ
ướ
ướ
c
c
c
c
đặ
đặ
đặ
đặ
t

t
t
t
t
t
t
t
ê
ê
ê
ê
n
n
n
n
M

t
trong
nh

ng
l

i
nghi
ê
m
tr


ng
m
à
ng
ườ
i
l

p
tr
ì
nh
c
ó
th

ph

m
ph

i
l
à
đị
nh
ngh
ĩ
a
m


t
quy
ướ
c
đặ
t
t
ê
n
t

i.
T
ô
i
đã
ti
ế
p
qu

n
nhi

u
d

á
n

m
à
trong
đó
t
ô
i
ph

i
b

ra
r

t
nhi

u
th

i
gi

ch

để
hi

u

ch
ươ
ng
tr
ì
nh,
do
l

p
tr
ì
nh
vi
ê
n
đặ
t
t
ê
n
c
á
c
bi
ế
n
l
à
$fred

v
à
$barney
thay
cho
$email
v
à
$name.
T
ô
i
đ
ang
đề
c

p
đế
n
m

t
d

á
n
m
à
ng

ườ
i
l

p
tr
ì
nh
c
ũ
đã
quy
ế
t
đị
nh
đư
a
v
à
o
to
à
n
b

ch
ươ
ng
tr

ì
nh
m

t
ki

u
đặ
t
t
ê
n
k
ì
l

(a
Flinstones
naming
theme),
kh
ô
ng
ph

i
t
ô
i

đù
a
đâ
u.
C
á
ch
b

n
đặ
t
t
ê
n
bi
ế
n
v
à
h
à
m
l
à
trung
t
â
m
c


a
vi

c
x
â
y
d

ng
m

t
ch
ươ
ng
tr
ì
nh
d

đọ
c.
C
ó
nhi

u
l


p
tr
ì
nh
vi
ê
n
ph

m
l

i
khi
đặ
t
t
ê
n
bi
ế
n
v
à
h
à
m
m
à

n
ó
:

qu
á
d
à
i
ho

c
qu
á
ng

n

kh
ô
ng
li
ê
n
quan
đế
n
ng

c


nh

kh
ô
ng
để
ý
đế
n
c
á
ch-vi
ế
t-ph
â
n-bi

t
(case
sensitivity)

ng
ă
n
c

n
kh


n
ă
ng
d

đọ
c
(
đặ
c
bi

t
l
à
c
á
c
h
à
m)
1.
1.
1.
1.
Đặ
Đặ
Đặ
Đặ
t

t
t
t
t
t
t
t
ê
ê
ê
ê
n
n
n
n
bi
bi
bi
bi
ế
ế
ế
ế
n
n
n
n
1.1.
1.1.
1.1.

1.1.
C
C
C
C
á
á
á
á
ch
ch
ch
ch
vi
vi
vi
vi
ế
ế
ế
ế
t
t
t
t
ph
ph
ph
ph
â

â
â
â
n
n
n
n
bi
bi
bi
bi




t
t
t
t
Trong
PHP,
t
ê
n
bi
ế
n
c
ó
c

á
ch
vi
ế
t
ph
â
n
bi

t,
ngh
ĩ
a
l
à
$user
v
à
$User
l
à
ho
à
n
to
à
n
kh
á

c
nhau.
V
à
i
ng
ườ
i
d
ù
ng
l

i
d

ng
đ
i

m
n
à
y
để
đặ
t
c
á
c

bi
ê
n
c
ù
ng
t
ê
n
nh
ư
ng
kh
á
c
c
á
ch
vi
ế
t.
Đâ
y
l
à
m

t
th
ó

i
quen
t

i
t

.
C
á
ch
vi
ế
t
kh
ô
ng
bao
gi

n
ê
n
d
ù
ng
để
ph
â
n

bi

t
c
á
c
bi
ế
n
kh
á
c
nhau.
M

i
t
ê
n
bi
ế
n,
trong
c
ù
ng
t

m
v


c
(scope),
n
ê
n
c
ó
l
à
tuy

t
đố
i
duy
nh

t.
1.2.
1.2.
1.2.
1.2.
T
T
T
T
ê
ê
ê

ê
n
n
n
n
qu
qu
qu
qu
á
á
á
á
ng
ng
ng
ng




n
n
n
n
Nhi

u
ng
ườ

i
s

d

ng
nh

ng
ch

vi
ế
t
t

t
đầ
u
(cryptic
acronym)
b
í

n
cho
c
á
c
bi

ế
n
c

a
h

,
để
r

i
sau
n
à
y
h

i
ti
ế
c
v
ì
qu
ê
n
m

t

h

đã
mu

n
á
m
ch

đ
i

u
g
ì
khi
đó
.
T
ê
n
bi
ế
n
n
ê
n
m
ô

t

n

i
dung
n
ó
(s

)
ch

a,
d
ù
ng
nguy
ê
n
t

ho

c
nh

ng
ch


vi
ế
t
t

t
c
ó
th

hi

u
đượ
c
.
1.3.
1.3.
1.3.
1.3.
T
T
T
T
ê
ê
ê
ê
n
n

n
n
qu
qu
qu
qu
á
á
á
á
d
d
d
d
à
à
à
à
i
i
i
i

kh
í
a
c

nh
kh

á
c,
v
à
i
ng
ườ
i
l

i
s

d

ng
t
ê
n
bi
ế
n
qu
á
d
à
i.
N
ó
i

chung,
t
ê
n
bi
ế
n
kh
ô
ng
n
ê
n
d
à
i
qu
á
hai
t

.
Hai
t

c
ó
th

đượ

c
t
á
ch
bi

t
b

ng
d

u
ph
â
n
c
á
ch
"_"
ho

c
l
à
vi
ế
t
hoa
ch


đầ
u
c

a
t

th

hai.
1.4.
1.4.
1.4.
1.4.
Th
Th
Th
Th
ó
ó
ó
ó
i
i
i
i
quen
quen
quen

quen
t
t
t
t




t
t
t
t
D
ướ
i
đâ
y
l
à
nh

ng
th
í
d

t

t

v

t
ê
n
bi
ế
n
$username
=
'phanthanhkieu'
;
$password
=
'bimat'
;
$teachers
=
array
(
'Sadlon'
,
'Lane'
,
'Patterson'
,
'Perry'
,
'Sandler'
,

'Mendick'
,
'Zung'
);
foreach
(
$teachers
as
$teacher
);

×