PHP 和 MySQL 基础教程(一) `zrg?
HTML 和 PHP 、MySQL 的交互 Cn{v\Q~.4
4x}U+1B
为什么要用到数据库? cIQbu#[@
World Wide Web (WWW) 不仅仅是一个提供信息的地方。如果你有什么东西,作一个网站,同样可以和全世界的人一起分享。但是,这并不是一件很容易的事。当网站越做越大时,你可能会遇到这样的问题: 8AuE:=?,,
MGq\\hLD\-
网站包含了太多的东西,使得访问者不能够很快得得到他们想要的东西。这个问题在某种程度上对一个网站而言是致命的。 ]R>NmjAI
访问者想要向你提供信息,而且这些信息必须保存下来以备后用。 _BY+Tfol
上面的两个问题,都可以通过数据库来解决! 4Y}Nu
IdMwpru(
在 WWW 的世界中,数据库无处不在。大如 Yahoo! , Amazon , eBay ,小到一个简单的留言板,都可以看到数据库的用武之地。甚至可以说,数据库是一切高级应用的基础。 xY/F)JOeG
:iLRCK3C
为什么要用 PHP 和 MYSQL *];QPi~
就我所知,几乎所有的主要的商业网站数据库都是基于 SQL 的。其中最为流行的可能得算 Oracle 了。它很有威力,当然,也价格不菲。 SQL 不是一个应用程序,而是一种语言,它是 Structured Query Language (结构化查询语言)的简写,用来对数据库进行操作和查询的。 ,(Ol]W}
pg!MtuC}
在最近的几年中,一些公司开发出了“开放代码”的 SQL 应用程序,其中最著名的可能算得上 MySQL 了。它不仅仅是免费的,对于一般的中小型数据库应用,它的表现并不比 Oracle 逊色。 mQ<4(qd)
.p.(
\5Fo
要在一个网站上运行 MySQL ,你需要一种脚本语言来和数据库进行交互。在过去, Perl 是最流行的。但现在看起来 PHP 似乎更为出色一些。不要问我他们之间有什么区别 ?? 过去我用 Perl ,它也工作的很好,但是现在好像每个人都喜欢用 PHP 了。它的流行当然有它的道理。 )hl7)~S<
O9zMD8
需要的软件 Dn@ZS _f
这部分的内容, ChinaByte 网络学院前些时候的文章中已有介绍。读者可以参考《为 win98 设置本地 PHP 开发》一文。这儿不再详细介绍。 ;N(L,
rM^2yr7H
HTML 和 PHP 9-V'U\}L
作 者 : 扬眉 编译 本文点击次数:398 /t`,7y3T
+ue1+#
我们来看看 PHP 是如何工作的。看看下面的这段代码: ',xUU{5?
3[y$$qXI
< html> jl>TZ)4}V
Qu,R6G
< body> +lfO4^V
z?Ok'LX
< ?php (sQXfeMz
=+K?@;?
print "Hello, world."; [OTn>/W'
9od*N$
?> u8.Tu7~
.)$MZyo
< /body> z/+{QBen8
EPH
n"YK
< /html> +or<(%o @
OJ"./*H
当请求这个页面的时候,它将在浏览器中显示“ Hello , world ”。 e ><0crb
7l$
u.[
可以看到, PHP 脚本是嵌入在 HTML 文件中的。它以“ < ? ”开始,以“ ?> ”结束。不仅如此,我们甚至还可以把 HTML 标签也嵌入在 PHP 脚本中: x>B\2;
49M1^nMvoo
< ?php 9Q}g
Vqn
Y%kOq`uT=n
print "< html>"; vpf.0!zh
f,E7eL@
print "< body>"; PuREqa\_[
[520!JhZY
print "Hello, world."; \eNB L[
M;Pry3J
print "< /body>"; lq "X_M$
-z+,j(@
print "< /html>"; +B1&bOb
d4BzFGsW
?> %Z <{CV
HUD0
@HQI
两种方法殊途同归,效果是一样的。但是在一些特别的情况下,选择其中的一种要更为方便一些。 _J!&R:]$
PHP 的 prints 语句 2aCf?l(
作 者 : 扬眉 编译 本文点击次数:398 &.?E[db"h
tm5)x^7
PHP 和 HTML 最简单的交互是通过 print 语句来实现的: `*B0n>ol,
d1\nMm}v
< ?php " (O3B
)dX(0E4Td/
print "Hello, world."; ,3 /o7 '
Sx QA*}N
?> RG'76?z
(m,H 5
print 是最为简单也使用的最多的函数,用来把一些文本显示在浏览器窗口中, echo 函数和 print 相类似,但是你可以用“,”号来分隔多个要显示得内容,这在混合字符串常量和变量的显示时要方便一些。 [
5}Q
Nj3iZD|
还有一个 printf 函数,用来格式化数字的输出。可以把一个数作为整数,或者用科学计数法显示出来。 -*4*hHmb
3.?be.cq
在这几个函数中,圆括号的使用与否是不同的: ?R#$
c]
C{pOGc@
echo 一定不能带有圆括号 Z3hZy&_I
printf 却一定要有 _3@5@1[s
print 可有可无 x1#>"z7
要显示一个字符串或者一个数字很简单,只要把变量名或者常量跟在 print 语句后面就可以了。但是,如果要显示一个数组,是不是也是写成这样呢: 7~QI4'e
ur8+k4]\"
print $myarray; )Ln".Bu,
ciN\SA ZY
它输出的结果将是“ Array ”, PHP 告诉你 $myarray 是一个数组。这在你拿不准一个变量是否是数组时会有一些用处,但是现在我们希望看到的是数组的内容。 h#O9TB
|xcI~ X7Q
你可以用 implode 函数来把一个数组转换成字符串。它包含两个参数,第一个是数组变量名,第二个是数组内容的分隔符。当转换完成之后,数组的内容被分隔符联系起来形成一个字符串: El5} f4sl
K2yNIq_
$implodedarray = implode ($myarray, ", "); cbyzZ#WRb
p9?kJKN
print $implodedarray; @9KW ]7
RYEZ'<
还可以用 array_walk 函数来实现数组的显示。这个函数对数组的每个内容执行同一个函数操作。例如: I:iMRvp
N4C7I1ihq
function printelement ($element) =n"k gn
a24 AmoWx
{ bg-/
8,
.7^(~&5N
print ("$element< p>"); ]<f(@]R/d
C$6FI`J
} <A)M^,#o
*PnO$q@`
array_walk($myarray, "printelement"); B F<u3p??
PHP 如何向 MySQL 发送数据 `"&Nw,C
作 者 : 扬眉 编译 本文点击次数:398 A_oZSUrR
$xZ ~bE9
你应该对 HTML 表单比较了解了,下面的一段代码是一个很简单的 HTML 表单: Cn3_D
SW#/;|m
< html> f;
|fS~
gx9Os2Z|3
< body> :}v-+eIQ
;C$+8%P4
< form action=submitform.php3 method=GET> i>YQ<A1
K#wA ;
姓 : < input type=text name=first_name size=25 maxlength=25> }psRgF
e9KD mX_
名 : < input type=text name=last_name size=25 maxlength=25> s/IsrcfM
$!.>)n
< p> '^_u5Y]
7:u+cv
< input type=submit> 1]2]l*&3
/VT/KT{
< /form> ~\CS%thX
O+=%Mz(l
< /body> 4kM/`g6?,q
w7?fJ")
< /html> $C\ETQ@
qXW\/NT"p<
当你输入数据,并按下 submit 按钮后,这个表单将把数据发送到 submitform.php3 。再由这个 PHP 脚本来处理收到的数据,下面就是 submitform.php3 的代码: pVy=rS-
0wv#AT
< html> 1}DA| !~
mg'q-G`\<
< body> Xh;.T=/E|
>%U+G0Fq
< ?php Q p>b
):! =XhQ
mysql_connect (localhost, username, password); R}Lk$#S#
8J(j}</>a
>5~#BrpwG
nL:&G'd
mysql_select_db (dbname); YK3>M"58
29RP$$gR
mysql_query ("INSERT INTO tablename (first_name, last_name) DQXUh#t\(]
;3cbXc@]
VALUES ('$first_name', '$last_name') #_ |B6!D!
}R['Zoh4I
"); {\[ Gl
\tI%[g1M
print ($first_name); sg
$db62>
yv[j
Pbe
print (" "); }~I!'J#)
lln"c
print ($last_name); z5fE<=<X_W
njy2pDC@
print ("< p>"); h4pS~/
{]R'U/
print (" 感谢填写注册表 "); 9Lb96K?=>
nTqU~'d'
?> CjQO5
BkB>eE1)Ea
< /body> \#9LwC"8;
/88s~=
< /html> 6^"QABc
w==BSH[
在代码的第三行中的 "username" 和 "password" 分别代表你登陆 MySQL 数据库的账号和密码。在第五行中的 "dbname" 表示 MySQL 数据库的名称。在第十三行中的 "tablename" 是数据库中的一个数据表的名称。 4!Js="
.*zS2z
当你按下 submit 之后,可以看到你输入的名字被显示在一个新的页面中。再看一看浏览器的 URL 栏,它的内容应该是像这样的: d+JK")$9C
o]e,5]
… /submitform.php3?first_name=Fred&last_name=Flintstone lnZ{Ryo(
EJkHPn
因为我们用到的是表单 GET 方法,因此数据是通过 URL 来传送到 submitform.php3 的。显然, GET 方法是有局限性的,当要传递的内容很多时,就不能用 GET 了,只能用 POST 方法。但不管用什么方法,当数据传送完成后, PHP 自动的为每一个表单中的字段建立一个和他们的名字(表单的 name 属性)相同的变量。 QO'Hyf t
:X;G]B
.
PHP 变量都已用一个美元符号开头的,这样,在 submitform.php3 脚本处理的过程中,就会有 $first_name 和 $last_name 这两个变量了,变量的内容就是你输入的内容。 4qOzjEQ
!wy _3a
我们来检查一下你输入的名字是否真的被输入到数据库中了。启动 MySQL, 在 mysql> 提示符下输入: Y_'ERqQ
n N<N~
mysql> select * from tablename; 7s|'NTp
I@'[> t
你应该可以得到一个表,内容就是你刚才输入的了: g<:Lcg"u
JY0aE
+------------+------------+ >H;i#!9,
")|/\ w,
| first_name | last_name | \HeJc:^
+94)BxrY
+------------+------------+ &bsq;)wzs
xo"GNFh!
| 柳 | 如风 cfLLFPhv)
DK4yAR,g
+------------+------------+ )O1]|r7v
i1
E|lp)
1 rows in set (0.00 sec) *'/,
P>7Xbm,VP
我们再来分析一下 submitform.php3 是如何工作的: k)p`x"To
B@,r8)D
脚本的开始两行是: ?*fa5=ql
Ww]$zd-bo
mysql_connect (localhost, username, password); 6R6Ub
0
$p0nq&4c
G$<(>"Yr~$
5p0~AN)
mysql_select_db (dbname); a1cX+{W
|`T(:ZKXZ2
这两个函数调用用来打开 MySQL 数据库,具体的参数的含义刚才已经说过了。 7> Z| K
')uYI;h9
下面的一行是执行一个 SQL 语句 : oPSPb(.
H%wB8Y
]
mysql_query ("INSERT INTO tablename (first_name, last_name) HGQ</5Z
sfM"!{7
VALUES ('$first_name', '$last_name') H5K
Fm#
\QvGkcDc{
"); boo361L
> G\0Z[<v,
mysql_query 函数就是用来对选定的数据库执行一个 SQL 查询。你可以在 mysql_query 函数中执行任何的 SQL 语句。被执行的 SQL 语句必须作为一个字符串用双引号括起来,在其中的变量要用单引号括起来。 gQ+]N*.
HXLnjXoe
有一个要注意的事情: MySQL 的语句要用一个分号 (;) 结束,一行 PHP 代码同样也是这样,但是在 PHP 脚本中的 MySQL 语句是不能有分号的。也就是说,当你在 mysql> 的提示符下输入 MySQL 命令,你应该加上分号: 6>vR5pn
FOTe,F.8
INSERT INTO tablename (first_name, last_name) R|st<P
my'nDi
VALUES ('$first_name', '$last_name'); 8Y`Lq$u
}.&nEi`
但是如果这个命令出现在 PHP 脚本中,就要去掉那个分号了。之所以这样做,是因为有的语句,如 SELECT 和 INSERT ,有没有分号都可以工作。但是还有一些语句,如 UPDATE ,加上分号就不行了。为了避免麻烦,记住这条规则就好了。 clE9I<1v
VeA@HC`?"
PHP 如何从 MySQL 中提取数据 ^)AECn
V*p[6{U0
现在我们建立另外一个 HTML 表单来执行这个任务: c#OxI*,+/
? x%s
j
< html> b;i*}4h!
jBLTEb
< body> }LUvh
F&Md+2
< form action=searchform.php3 method=GET> xIM,0xM2
` ~GXK
请输入您的查询内容 : B>2=IZ
q*hn5 K*
< p> m06'T2 I
.n 9.y8C
姓: < input type=text name=first_name size=25 maxlength=25> V._-iw]v
=M\yh,s!
< p> bxXpw&
>q}3#TvP@
名 : < input type=text name=last_name size=25 maxlength=25> 0Wr<l%M)+
14,)JZN
< p> s9?mX@>h
{ 53FR
< input type=submit> A(y6]E!
1-kuK<KR
< /form> d^v#x[1msZ
N63?4'_W
< /body> 7e<=(\(yl
*p{p.%Qs:
< /html> i$Y#7^l%k
o@Ye_aM~?Y
同样,还要有一个 php 脚本来处理这个表单,我们再建立一个 searchform.php3 文件: 1[egCC\Mo_
Jf^3nBZ
< html> )."ob=m
Pf;OYWST
< body> uYC^&siS<s
x;mw?B[
< ?php W~ yb>+u
Gs:g
mysql_connect (localhost, username, password); 1 iH@vd
']}-;m\
}<Ydj .85
a"( Ws]K
mysql_select_db (dbname); >tg)F|@
4H8r[
if ($first_name == "") m#+0m!
0#|Jhmv-zL
{$first_name = '%';} 6i/unwe!`)
t>[QW`EeP
if ($last_name == "") [v1$Lp
z~H1f$}
{$last_name = '%';} g@H<Q('fJ
@rhS[^1wi+
$result = mysql_query ("SELECT * FROM tablename 1jC85^1Taq
OTy!Q,0$.
WHERE first_name LIKE '$first_name%' zw<<st Bp
uP9b^LEoN
AND last_name LIKE '$last_name%' IOHWb&N6
iM .yen_vp
"); VwR\"8r3
PMQTcQ^
if ($row = mysql_fetch_array($result)) { g`y9UYeh
IADSWzQ@
do { B>u`%Ry&
8@3=SO
print $row["first_name"]; 5OdsT-y
i4YskhT
print (" "); r/h\>s+N
}s2CND
print $row["last_name"]; /JNG}*
AD
print ("< p>"); $1=7^v[U
JuJW]E Q
} while($row = mysql_fetch_array($result)); <Sot{_"li
)CXlPbhY?
} else {print " 对不起,再我们的数据库中,没有找到符合的纪录。 ";} 0Gu77&
A
rE~6X
?> /)K')
lBP?7`U
< /body> TQ\#Z~CbK{
%DuPM66r
< /html> AO<T6VK
dV$[O`F*b
当你在表单中输入了要检索的内容,再按下 SUBMIT 按钮后,就会进入一个新的页面,其中列出了所有匹配的搜索结果。下面再来看看这段脚本到底是怎样完成搜索任务的。 V lZ+x)E
B7Ket8<J
前面的几条语句和上面讲到的一样,先是建立数据库连接,然后选定数据库和数据表,这些是每个数据库应用所必需的。然后有这样的几条语句: 5bb#{?2i
5Sl"1HL
if ($first_name == "") -zECxHjx
CH7a4qL`
{$first_name = '%';} W=Syo&;F8
Bo:epus}\
if ($last_name == "") -w+.'
7sVM[lr<
{$last_name = '%';} t__f=QB/
8jCho
这几行用来检查表单的各字段是否为空。要注意的是那两个等号,因为 PHP 的语法大多源于 C 语言,这儿等号的用法也同 C 一样:一个等号是赋值号,两个等号才代表逻辑等于。还应该注意的是:当 IF 后条件为真时,后面要执行的语句是放在“ { ”和“ } ”中的,并且其中的每一条语句后面都要加上分号表示语句结束。 9DBX.|
ij:xr% FJ
百分号 % 是 SQL 语言的通配符,理解了之一点后,就该知道这两行的意思了:如果“ FIRST_NAME ”字段为空,那么将列出所有的 FIRST_NAME 。后面的两句也是同样的意思。 'e:4
.BxI~d^
$result = mysql_query ("SELECT * FROM tablename <.`i,|?MHS
9@1n:X
WHERE first_name LIKE '$first_name%' J_F\cM
E+y_te^+b
AND last_name LIKE '$last_name%'" {GtX:v#
j*>]HNo&
"); "OwM'
n8
:U\*4l
这一行完成了搜索的大部分工作。当 mysql_query 函数完成一个查询后,它返回一个整数标志。 <xBL/e
%
+;+G+Tn
查询从所有的记录中选出那些 first_name 列和 $first_name 变量相同,并且 last_name 列和 $last_name 变量值也相同的记录,放到暂存的记录集中,并用返回的整数作为这个记录集的标志。 D*UxPm"pw
$.C\H,H
if ($row = mysql_fetch_array($result)) { H@- GYX"4
QXj #Brp
do { M8lw;
(
`U0XvWPr[
print $row["first_name"]; Pjq'c+4.yL
LcLHX
print (" "); N+~
MS3
N-N]BS6
print $row["last_name"]; p#c41_?'e
YUSrZ9Yg
print ("< p>"); <=CABWO.
-sHX
} while($row = mysql_fetch_array($result)); _"*vj-{-y
|i
B#
} else {print " 对不起,再我们的数据库中,没有找到符合的纪录。 ";} *~U*:>hS
y ;mk]
这是最后的一步,就是显示部分了。 mysql_fetch_array 函数先提取出查询结果的第一行的内容,在用 PRINT 语句显示出来。这个函数的参数就是 mysql_query 函数返回的整数标志。而 mysql_fetch_array 执行成功后,记录集指针会自动下移,这样当再一次执行 mysql_fetch_array 时,得到的就是下一行纪录的内容了。 5[g&0
\<I&utn
数组变量 $row 被 mysql_fetch_array 函数建立并用查询的结果字段来填充,数组的每一个分量对应于查询结果的每一个字段。 :V$\y up
GX23c
i
如果有符合的纪录被找到,变量 $row 不会空,这时就会执行花括号中的语句: i^WY/ OhL
'xd8rN%T
do { Xcfd]29
L0VZ>!*o
print $row["first_name"]; H8g6ZCU~
.Z]hS7t
print (" "); ;u`8pF!_eE
!,$K;L
print $row["last_name"]; Bor_(eL^
Ot.v%D`e 5
print ("< p>"); g
mWwlkf9
= y^5PjN
} while($row = mysql_fetch_array($result)); o(}%b8 K
8(ZQM01;
这是一个 do … while 循环。与 while 循环不同的是,它是先执行一遍循环循环体,然后在检查循环条件是否满足。由于已经知道在纪录集不为空的情况下,肯定至少要把循环体执行一遍,所以应该用到的是 do … while 而不是 while 循环了。在花括号中的就是要执行的循环体: kjQW9QJ<
&qY]W=9uK
print $row["fir F<h+d917
PHP 如何从 MySQL 中提取数据 {$t*XTY6R
作 者 : 扬眉 编译 本文点击次数:398 %1
RWF6
[PXq<ST
现在我们建立另外一个 HTML 表单来执行这个任务: #P!<u Lc%
Sg%s\p]N_#
< html> ~jJ.E_i
iWWtL
< body> 6RIbsy
;Ows8
< form action=searchform.php3 method=GET> FD!8o
6yYjZ<
请输入您的查询内容 : >/RFff]Fh0
]
0L=+=w
< p> ZweAY.]e
D,*|:i
姓: < input type=text name=first_name size=25 maxlength=25> [$K8y&\L
zT}vaU6
< p> h#Rza-?"\
hrJ(] [8
名 : < input type=text name=last_name size=25 maxlength=25> Yt =)=n
Bi9Q8#lh
< p> g/l:q&Q<
@=z.^I30
< input type=submit> wIAH,3!
!m))Yp-"H
< /form> N,B!D~@
b
IxH0=f
< /body> {o^tSEN!-
H9'psv
< /html> c?<)!9:
tKyGD|g S
同样,还要有一个 php 脚本来处理这个表单,我们再建立一个 searchform.php3 文件: IlO,Ql
[&P@0Fn
< html> 67/\0mV:~
A|K=>7n]U
< body> h$sOJs~6h
*[i49X&rd
< ?php {m3#1iV9
J:'_S `J
mysql_connect (localhost, username, password); z80(+`
i@D4bd9lR
#?\(l%
7MZH'nO
mysql_select_db (dbname); |_g7k2oLY
T9J&^I
if ($first_name == "") E;`^`T40
]5@n`;.
{$first_name = '%';} t%e<]2-8
]iW:YNvXA
if ($last_name == "") QoUdTIIL
_R]0S
{$last_name = '%';} }M(xN6E
qGhg?u"n:
$result = mysql_query ("SELECT * FROM tablename WqM| nX
i/C%
1<
WHERE first_name LIKE '$first_name%' K:XP;#OsP
E_'H=QN c
AND last_name LIKE '$last_name%' 7jxx,#I:
yMyvX_UNI
"); zICCSF&H
%MGt3)
if ($row = mysql_fetch_array($result)) { 2[=3-1c
"~.4z,ha
do { Yh^8
!
RiAMW|M"C
print $row["first_name"]; kf<c[ su
s8's(*]
print (" "); )2l @%?9
Yj bp:
print $row["last_name"]; ,)dlL tUm
/zXOtaG
print ("< p>"); vw:GNpg'R6
bo DD?0.|
} while($row = mysql_fetch_array($result)); }:0ru_F)(4
QL7.QG
} else {print " 对不起,再我们的数据库中,没有找到符合的纪录。 ";} qs\Cwn!
y]PuY\+
?> ?+yM3As9_V
N<b2xT
< /body> >r\GB#\5
mT -[I<
< /html> $aU.M3
JvvN>bg
当你在表单中输入了要检索的内容,再按下 SUBMIT 按钮后,就会进入一个新的页面,其中列出了所有匹配的搜索结果。下面再来看看这段脚本到底是怎样完成搜索任务的。 j[R.UB3J
S[7^#O.)
前面的几条语句和上面讲到的一样,先是建立数据库连接,然后选定数据库和数据表,这些是每个数据库应用所必需的。然后有这样的几条语句: Gt?l 2s
32HF&P+0%
if ($first_name == "") .`_iWfK
i5Sya]FN
{$first_name = '%';} :
qK-Rku
e
T;@pc
if ($last_name == "") EqtL&UHe
R{Zd ]HT
{$last_name = '%';} s I\-0og
<%d!Sk4
这几行用来检查表单的各字段是否为空。要注意的是那两个等号,因为 PHP 的语法大多源于 C 语言,这儿等号的用法也同 C 一样:一个等号是赋值号,两个等号才代表逻辑等于。还应该注意的是:当 IF 后条件为真时,后面要执行的语句是放在“ { ”和“ } ”中的,并且其中的每一条语句后面都要加上分号表示语句结束。 }ssja,;
}6.@
百分号 % 是 SQL 语言的通配符,理解了之一点后,就该知道这两行的意思了:如果“ FIRST_NAME ”字段为空,那么将列出所有的 FIRST_NAME 。后面的两句也是同样的意思。 Ua:@,};
}.'rhR+
$result = mysql_query ("SELECT * FROM tablename 2ry@<88
4'`P+p"A
WHERE first_name LIKE '$first_name%' 0fvOA*UP
%GY'pQz
AND last_name LIKE '$last_name%'" (p12=EB<
\X\f~CB
"); `)cH(Rj
#\=7A
这一行完成了搜索的大部分工作。当 mysql_query 函数完成一个查询后,它返回一个整数标志。 AIn/v`JeX
%1jcY0zEQ
查询从所有的记录中选出那些 first_name 列和 $first_name 变量相同,并且 last_name 列和 $last_name 变量值也相同的记录,放到暂存的记录集中,并用返回的整数作为这个记录集的标志。 >w7KOVbN3
^<-r57pz
if ($row = mysql_fetch_array($result)) { Xj{fM\,"9
R{bG`C8.d
do { GrJLQO0$N
! #!
MTk
print $row["first_name"]; 6YNL4HE?
YI7M%B9Lj
print (" "); Mth:V45G|
ti%RE:*
print $row["last_name"]; %aw.o*@:
gELG/6l
print ("< p>"); `?N0?;
^Z;zA@[wt
} while($row = mysql_fetch_array($result)); \B84
QM3DB
} else {print " 对不起,再我们的数据库中,没有找到符合的纪录。 ";} z#o''
Y2 J-`o$5
这是最后的一步,就是显示部分了。 mysql_fetch_array 函数先提取出查询结果的第一行的内容,在用 PRINT 语句显示出来。这个函数的参数就是 mysql_query 函数返回的整数标志。而 mysql_fetch_array 执行成功后,记录集指针会自动下移,这样当再一次执行 mysql_fetch_array 时,得到的就是下一行纪录的内容了。 @>VVB{1@,]
vaP`'
数组变量 $row 被 mysql_fetch_array 函数建立并用查询的结果字段来填充,数组的每一个分量对应于查询结果的每一个字段。 MA:5'n
/; Bmh=
如果有符合的纪录被找到,变量 $row 不会空,这时就会执行花括号中的语句:
UsFn! !+
o.fqJfpj
do { m Rw0R{
~I+MuI[
print $row["first_name"]; s^eiym P
=(7nl#o
print (" "); njX$?V
r)}U
'iv*%
print $row["last_name"]; T#3@r0M
0&]1s
print ("< p>"); :(X3?%
"EMW'>&m