include的語法是:
: n) j3 T; a1 Y2 V( l5 r9 @
6 q! c9 ~' m' M3 O" j) xInclude ('included_text_file'); & K P9 G5 X! p5 c* r
/ g2 n4 x4 W* G- ^9 U6 s
現在我們可以用?>來關閉PHP部分,並且用</body></html>來結束html頁面。 $ }$ e1 V" k' {0 ^; e3 \1 n% j
3 D3 {1 G E+ o6 L
使用表單增加數據
/ c0 B9 `9 g @$ F" h
& u. w9 V0 ^9 l/ X: w4 x* B 讓我們看一下下面的代碼: " B8 p' ?! L5 z- n+ A
5 o S* T: t3 {6 u2 y" y7 n% l-------------------------------------------------------------------------------- 2 D' n+ U Z B9 a: ?
<html>
8 U. y1 n# }5 G<head><title>Add an entry to the database</title>
6 _$ a, x; j7 D a- x: P2 V</head> % c# y) |/ p* t8 w8 Z; H" J
<body bgcolor=#ffffff>
! ?% B$ w$ N5 ~. l+ J6 b R
/ O# x; T+ m% U# H* N- k( [4 w G; F<h1>Add an entry</h1> 7 l8 t7 }4 q" G" e6 s5 R
0 V, E. f H/ s! A$ s. M% ? \( V& b
<form method="post" action="add2tbl.php3">
- K* U, W3 g; V' x3 H% N8 e( G<table width=90% align=center>
/ t" B8 F R& y, {$ J0 K9 h: s
1 r+ V- C# I* \2 ~5 ~5 E<tr><td>Index:</td><td><input type=text name="idx" size=3 maxlength=3></td></tr> 3 i2 }1 y5 o, O! J, u+ V/ w
) C& R/ b3 J. e7 z S1 g2 V& f R' L<tr><td>UserName:</td><td><input type=text name="UserName" size=40
' [2 B; X6 k) }& W7 imaxlength=100></td></tr> 8 L) w6 G7 K" z' {. a
* E' e5 a1 O& X' k) F<tr><td>LastName:</td><td><input type=text name="LastName" size=40
1 W: o, p: q0 M; V V. J) xmaxlength=100></td></tr> : O" @% N2 t" z! X$ b
& m: ], M3 Q: K7 h<tr><td>FreeText:</td><td><input type=text name="FreeText" s=40 maxlength=100></td></tr> 0 d# H9 K8 U" q0 B6 X
+ W$ i# O) H: r
<tr><td></td><td><input type=submit value=add></td></tr>
- x- `) p9 r! V: K
( c) f) a& J7 D% K+ E+ m |</form>
& ]- B4 q% n/ B5 @</table>
$ E; N- w, F3 a+ m. q' o& i9 ]* R- }' H
<?php include ('links.x');?> 9 h; E$ h" s, c* X+ ^" A
0 u% K c' ^, {9 i8 e- g. U v1 s
</body>
6 H& f; T9 I" S/ z6 P</html>
/ j: O& v) l& ]% D7 U/ Y% q-------------------------------------------------------------------------------- . C4 f- N4 D* l% y: ]' b
假設你對表單很熟悉,這是一個相當簡單的腳本。我們根據html頁面設計了一個表單,它在提交後調用 / V& b+ m$ ^6 s: q+ |8 d
add2tbl.php3腳本。現在,表單與MySQL表相對應由4個字段組成:index number,FirstName,LastName和
. f8 f1 a% \' [' c: u) oFreeText。注意在這個表單中字段名字與MySQL表中字段名一樣,但這只是為了方便起見而不是必須。
7 G6 m9 a( {& [* Z3 G1 h0 }' Y2 G/ _7 [0 D C7 A9 s
我們再一次使用了include命令<? include ('links.x');?>(像在前面所解釋的)來增加鏈接。
0 q# ~& [- K9 j N; j2 f
+ k& ]3 L3 | q& M0 m 讓我們看一下add2tbl.php3腳本: 0 U) ^, C9 ]4 A W1 I. `0 a. H% G
; y/ u$ ]. Q$ w3 G, k2 l4 A--------------------------------------------------------------------------------
: y/ S I: d' L4 M/ q! H<html>
9 ~) V1 U$ w: O4 S7 m' g. W<body>
! T, V" P5 Y- g# G1 i+ H0 f" ~/ @5 m0 `' O0 m
<?
7 m0 I' Z# e% z% g7 T; J: oif ($UserName) U& r' D' D% D) v) Z: Q
{
/ \* Q- n+ f3 S; i$ [mysql_connect() or die ("Problem connecting to DataBase");
) R+ p" U( e- h3 S8 T/ H. R$query = "insert into tbl values ('$idx','$UserName','$LastName','$FreeText')"; ! x* Z1 g# F) Q9 I0 e' u5 T
$result = mysql_db_query("example", $query); / G- h) h! u, ~. ^: ^6 T T6 [
( f/ p( E2 y% }2 {' z V3 ?2 s2 gecho "Data inserted. new table:<br><p></p>";
4 ~' O! |" s- e6 e) S; P- ~. ~) [$query = "SELECT * FROM tbl";
* |, ~8 G7 {' `; _$result = mysql_db_query("example", $query); 7 H- ^1 e* `% K# E+ S9 b$ \9 n
! _* L6 k' [$ E( t# t" Vif ($result) 0 m: ~, X) q" ]% A) t
{
4 P- f% P5 l) q. E) T' wecho "<table width=90% align=center border=1><tr> & O D% \' t: z( f
<td align=center bgcolor=#00FFFF>idx</td> , u& P% B- P$ h9 A; ~ k$ W7 ?
<td align=center bgcolor=#00FFFF>User Name</td>
" l' s8 ^, _8 z$ M<td align=center bgcolor=#00FFFF>Last Name</td>
& \, O/ x$ L1 R5 d& B$ s<td align=center bgcolor=#00FFFF>Free Text</td>
) T4 S4 ]5 p3 F. k</tr>"; 7 D" c' D& ?0 H! s8 O" ]! a
! a, F: w! b. U; B
while ($r = mysql_fetch_array($result))
0 a% b0 c7 z1 Q( }{
) \1 E1 ?% H9 F( i; i$idx = $r["idx"]; 0 L! f1 w2 e z) Q$ Z+ V
$user = $r["UserName"]; 6 _8 J7 k: I" _7 f' c& l
$last = $r["LastName"];
; Z# O8 v, O& P0 R9 D( h$free = $r["FreeText"];
- n; X. e6 E# x' c4 D# a1 P( h$ v
2 a/ a. K8 z) z$ lecho "<tr>
9 j% e% U+ H& p- |<td>$idx</td> 4 ]0 _0 g% m: e3 T
<td>$user</td> ) m- k1 \& {. |$ q3 v" [3 f1 u' W9 I
<td>$last</td>
1 X2 H, [# y$ ?1 ]% U) H- N5 |% {2 e<td>$free</td> $ Z- J3 @' d: f
</tr>"; ! B; c# k& N# t9 @; k6 O' A4 m
- l( W; X9 @2 u) ?' g3 R6 Y} // while循環結束 0 X" l; g8 V' K# n' G
echo "</table>"; 6 w* X# x3 b0 V# s7 x _
} / [5 h8 x' @3 z1 e
else 1 s+ ^1 d+ _; Z/ I9 G
{ 5 L) k. E. e, P, ^4 ]: a) E' D
echo "No data."; - w! K5 v+ w3 Y
} // if結束($result)
( Q p5 l, d9 A) ]" L} % R: ` i( r0 h. R3 l& e1 k
else
( H& E. a8 A! k$ D( |{
9 \% O, y4 M( J4 _$ l! c- \5 Recho "No UserName Entered. Please go back and reenter UserName"; 9 T) w3 d: R/ `6 j" f) C. t
} // if結束($UserName)
' L4 G, \" t5 \& ]) k$ M
+ F2 F* u% _8 @0 b: Eecho "<p></p>";
; {( v& A p" V6 J4 B$ Z1 k1 O- l. K1 j2 Q* c0 b
include ('links.x');
. }! c, p. O. y. L" g& A+ Z2 J
. Y! R* A3 n; ^' ^6 N$ i B* n: f?> ' ~+ r7 E7 I. s$ V4 F' |
% @; X* I0 }# s8 g) L</body>
1 u5 [- m+ a! G! a: j; \</html>-------------------------------------------------------------------------------- # o; l) H1 s0 V- j9 t- m
解釋: 9 m4 s1 f5 L8 A4 E4 |7 f* `
5 R; v) j4 x* [ 這一部分包含兩個主要部分。第一部分從前一個表單中得到數據,並將它們插入到數據庫中。第二部分 2 E1 F7 ]& w- Z
從數據庫中打印出表的內容。第二部分同我在查看數據庫部分中所演示的一樣。
; [( \4 t1 m- b7 `" F3 Y
, M- d6 Z- _+ z' D- y+ w0 u/ Y, ^ 第一部分: 9 b3 |( Z/ Y3 h) w: L0 W- `1 D
; F- A; H, u; S Q: i6 R) G, S1 d 首先我們象通常一樣使用mysql_connect()來同數據庫連接。
6 r: A( @ V8 p8 J! U+ o$ s9 Z* G ?7 ~, `& k" U! X0 V! n# v
然後我們使用下面查詢: : b+ u6 ]; Z. }! t' }
5 o. S0 D+ k' z+ F D- C; h. l9 n
$query = "insert into tbl values ('$idx','$','$LastName','$FreeText')"; ; U( ^) a# m+ H7 d
6 E8 G# H8 r; [) }% O5 j3 _" g 這個查詢使用從前面表單傳遞過來的$idx,$UserName,$LastName和$FreeTExt變量,並將它們插入到 8 a) _- D& K0 `) R5 H
tbl表中。 - w9 [! l' V1 J
. O. N4 p5 S2 ~5 N7 ?( L0 ?) x* m
注意,我在腳本中所作的註釋。使用一個註釋可以用"//",服務器將忽略此行的後面部分。 , l7 t- b% y$ \6 Y3 n Q" Y
; m4 t5 ?% k+ L 簡單,不是嗎? 8 w9 n! x; b" |0 Y- S
. |1 A$ G! v% o8 q 從數據庫中編輯一條記錄:
6 s' C7 g Z! J9 R9 r3 l' c) D! \/ {& ~9 @
讓我們假設一下,我們想修改數據庫中存在的記錄。在前面,我們看到有一個叫set的SQL命令用來設置 5 d; K- }( @2 v( j. t* G
數據庫中存在字段的值。我們將使用這個命令來修改數據庫中的整條記錄。 / I8 c3 o. t+ S; ?0 x9 I( E0 ?
8 E0 w, z6 c; e+ u 考慮下面的腳本:
" R+ J! X/ a* j8 d" Z9 Q4 o$ w8 A' D-------------------------------------------------------------------------------- % b" ~# y T6 o- [7 l$ g
edit.php3:
+ d5 ~0 V) P, {; [; I4 D. @. J
+ V0 l% m9 v% B+ N<html> 8 {2 K3 D4 e( z
<head><title>Editing an entry from the database</title>
3 U3 T9 x5 ?" n \* f; g( F5 T</head> + j$ r- o6 J6 b( {2 l% v
' u0 x0 M+ ?: b/ P. r<body bgcolor=#ffffff> ) r S$ k( q' J8 f
<h1>Edit an entry</h1 / ?9 g* v( s4 \* [8 M
) X1 h4 a$ u$ h$ g& Q/ K7 o5 _
<? 8 `7 W* ?/ t; _2 L& ^( e9 s1 }
7 p4 I, j$ C# W4 r J N0 Z
mysql_connect() or die ("Problem connecting to DataBase");
) K$ f9 \4 f( Z# x9 a$query = "select * from tbl";
3 f+ b, S, X# X, A/ L. K9 F& h$result = mysql_db_query("example", $query); * `7 F3 b( R! n8 ?
' D ]- t7 C" s: y2 B$ |) V
if ($result) 2 {: m \- y6 \+ U8 [
{
6 p& P' F2 w* [$ d Zecho "Found these entries in the database:<br>";
, M0 u2 p" }" G, ~echo "<table width=90% align=center border=1><tr>
. @$ P" ?! G. E U4 }/ S<td align=center bgcolor=#00ffff>idx</td>
! T; l7 w* {: L3 D<td align=center bgcolor=#00FFFF>User Name</td> # m7 {5 k( u# @+ E- O
<td align=center bgcolor=#00FFFF>Last Name</td> 6 ]* C& {! b8 Y! u( C8 T$ X4 s( q- J
<td align=center bgcolor=#00FFFF>Free Text</td> , B7 U* p$ |8 k9 A/ V7 G' N* r1 e, b
</tr>";
; e) ^' U( M9 B6 e" t; E+ l* G
; g' X$ z6 K2 y" H. pwhile ($r = mysql_fetch_array($result))
3 d7 h# I" i. ?0 h1 N4 X{
; [8 }. B5 Y8 P- `" ?1 s$idx = $r["idx"]; 7 e- q% b( P4 p& [2 G- x- u& \- |
$user = $r["UserName"]; ! d, ^( c4 ?* z1 r# ~; H1 V
$last = $r["LastName"]; , a+ \2 ]5 r8 i' e `
$text = $r["FreeText"]; ; V7 I k% {5 {2 E, v s6 l
! g% ?: N) w6 f& t d' Q
echo "<tr>
" ^4 i7 w/ p% M+ X<td align=center> : E9 K, X3 r! A. V) X3 [
<a href=\"editing.php3?idx=$idx&user=$user&last=$last&text=$text\">$idx</a></td> 9 B+ Z- L! Q8 s' x' u
<td>$user</td> 5 R4 m3 ]$ N) n8 d7 K; r/ z! t: m
<td>$last</td>
! C! X# p, Y( @7 x( L8 k<td>$text</td>
" B% e2 n/ _% w: a+ ~</tr>";
2 z% a9 B1 {8 K' |" w3 B+ g4 S* S) i$ X3 t
}
4 n% H9 v1 G* \8 ^# Lecho "</table>"; & _' B% N/ e6 L! @! K
} 4 K. T! t( Q* E+ G, I
else 2 R5 T0 D) M8 Q
{
. H5 ^ b/ G6 Z# D8 Z# necho "No data."; 1 U9 E0 e2 l9 A" v3 P6 N9 X9 W" R
}
1 A/ s4 L6 f/ I+ F; n" M7 `- K% \2 ]6 Q) d$ j: Z! b+ G+ s1 T
mysql_free_result($result); 6 q3 t& L1 u. G, I% }1 D4 ?2 ~! Y
include ('links.x'); ' Z8 Q$ A1 d R# y6 A
$ b, u0 k, o& v7 R1 `$ @
?>
& q; ^7 ]& V* p5 x
1 ?/ a$ ^3 Q. ]</body>
! A/ W0 ^. Q7 Z8 V( p8 n</html>--------------------------------------------------------------------------------
" o% ]% b% G& U" O$ d 如你所見,這裡的代碼有些熟悉。第一部分只是打印出數據庫中表的內容。注意,有一行不太一樣: & N7 D* }# v1 Y1 z3 j: `( S. d/ J
: ~0 {4 R; f* y) G<a href=\"editing.php3?idx=$idx&user=$user&last=$last&text=$text\">$idx</a> & \+ c! a* F4 G9 x* K% \
% \ j w3 C" s# t% @1 `- U- ]) H) a- b
這一行建立了一個到editing.php3的一個鏈接,並且給新的腳本傳遞了一些變量。同表單方式很像,只
. Y! ^* ]3 Q2 q, N+ D Z/ n是使用的是鏈接。我們將信息轉換成:變量和值。注意,為了打印出 " 符號,我們需要使用 \"否則服務器
! O" D$ F- A) O將把它看成PHP腳本的一部分並且作為被打印的信息。 * r3 H# p9 A3 T' f
4 \. S# m* c$ g# n 我們想將數據庫中的記錄全部轉換到過,這樣我們就可以得到表中的確切的數據,以便我們修改它容易 & W6 s6 ]- J1 ^2 g5 b4 E
一些。 & v) D& j' t7 W
! T; L' m/ c% x: \3 B-------------------------------------------------------------------------------- $ U5 K/ E2 b) J* u
Editing.php3:
) F/ B/ C/ Z! z
& u5 q2 S% d5 t4 ~; t<html>
. H; H" O7 x6 t5 w( g5 ?" r% S- H<head><title>Editing an entry</title> - d% e* s1 ?/ s$ ~+ t" |
</head>
9 m2 g& N$ ?- u! C! C1 i s8 M, x; i: O2 e: M0 J
<body bgcolor=#ffffff>
8 J6 z- r$ `; M; x, Y/ A9 j<h1>Editing an entry</h1>
. Y! m. e6 X$ }5 D' C<form method="post" action="editdb.php3"> / n% {4 R$ }" c8 [
7 s! Z; L9 M$ z J: K<table width=90% align=center>
, B: J1 W& k4 w/ R" p
g4 p, w& c, \<tr><td>idx:</td><td><?php echo "$idx";?></td></tr> 0 T1 x% }5 c7 K2 s
. ~, Q; w/ g+ P3 y) r% r. p f6 J
<tr><td>UserName:</td><td><input type=text name=UserName size=40 maxlength=100
! [ k8 |* e- a1 W p3 r* F, M) Qvalue="<?php echo "$user";?>"></td></tr> , S7 @, P# u1 E) s& t4 \0 }8 X& l
2 o& y6 F6 n! x8 R9 ~6 o4 F6 I" g
<tr><td>LastName:</td><td><input type=text name=LastName size=40 maxlength=100
- y4 z: b1 E* _4 r. ^7 |8 Dvalue="<?php echo "$last";?>"></td></tr> 3 e3 N& @5 Y. { [$ z$ W+ H1 Z( y
6 |' A8 f6 l8 A& ?: B/ \0 ~
<tr><td>Free Text:</td><td><input type=text name=FreeText size=40 maxlength=100 / K" M2 l9 D$ s
value="<?php echo "$text";?>"></td></tr> |