Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 90 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
90
Dung lượng
2,37 MB
Nội dung
GVHD: !"#$% TRNG I HC S PHM NG THÁP &"'(()'( (* +(, "/0& (-12& !"#$% %345!!67!!8 9$6:!!8 GVHD: !"#$% !"# $$$$ hng mi in t ngay nay phát trin nh v bo trên th gii nói chung và ngay cã Vit Nam nói riêng! Lp trình Web ang là mt cuc chi y ha hn hin nay và ngay cã trong tng lai! S ra i ca các ngôn ng lp trình giúp chúng ta xây dng nhng ng dng thng mi in t di nhiu hình thc khác nhau! Bên cnh s h tr ca các h qun tr c s d liu, chúng ta có th kt hp chúng vi mt trong nhng kch bn trên trình ch nh ASP, JSP, Perl,… hay PHP, chúng ta có th xây dng và trin khai các ng dng mt cách d dàng vi nhiu nhiu hình thc và mc ích khác nhau! PHP và MySQL không nm ngoài mc ích trên! Bt k chúng ta có mt kin thc c s v lp trình vi các ngôn ng nh Visual Basic, Cobol, hay ch bit mt chút ít vê HTML hay JavaScript, thì chng áng là gì cã, chúng ta v n có c hi n!m b!t kinh nghim mi m" vi lp trình nhng trang Web ng và làm ch nhng ng dng thng mi in t! PHP và MySQL nh là mt “c#p bài trùng”! Rt nhiu ngi ã ngh$ rng, không có s kt hp nào t%t hn s kt hp gia PHP và MySQL! Th PHP và MySQL là gì? Ti sao chúng ta ch&n và xem chúng nh là c#p bài trùng không th tách ri? Chúng ta s" ln lt n vi t'ng th mt! SVTH: Nguyn Anh Khoa Lp 27K10A – Khoa công ngh Thông tin ng Tháp, tháng 3 nm 2006 T GVHD: !"#$% %&'( $$$$ rong thi gian qua, c s giúp ca các thy cô trong khoa Công ngh Thông tin nói chung, và thy (#ng Qu%c Bo nói riêng, bn thân em có s tin trin lên t'ng ngày! Kin thc v Công ngh Thông tin tht rng ln, em không th nào t mình nghiên cu mt cách c lp mà phi ph thuc rt nhiu vào nhng kin thc mà thy cô ã hng d n và truyn t cho em! Bên cnh ó vi s giúp ) tn tình ca thy trong quá trình h&c tp, em ã tích cc thc hin * án ca mình mt cách nghiêm túc! Vì th cho nên, vi s giúp tht ln lao ca y ã giúp em hoàn thành * án ca mình mt cách y và không quá thi gian quy nh! Tuy * án hoàn thành không hoàn toàn nh mong mu%n, bên cnh ó còn nhiu khuyt im tht ln mà em cha th nào kh!c phc c, em mong rng, * án s" nhn c nhiu ý kin óng góp ca thy, cô và bn bè, #c bit là thy (#ng Qu%c Bo – Ngi ã hng d n cho em trong su%t quá trình h&c tp – Em chân thành cm n! 9;6$<:!!8 )#*+ , - /, !"#$% T GVHD: !"#$% 01/%-2 34 $$$$ 567689:;8<5=>9?5 5 @7 9> @ 8 A << <B CDEF@G<H7%I;J K=;>LMN@@8O5568P O;QB<BGP9;Q<DR9STU;>= 9VW=7X<@Y<I9?56KZ;[O 8<BG=\F:6X<H7X<D %I@G@@G55 5@79>O59]V57<J<BG^@7D> <<UO^@O_O;Q@79>9G9YV<_V<H7 <<O^@@8D`-`O5A@=UU O^@?aI76<b8<<UO^@ <DR8U;V9G<H7B<X`-`O5AF OF7<X9c9d<e<H7@5<:UO^@ YI@8f ;9:8IV`-`5'6EgO5h<C5@bi G<@>7VD%K7<b9;Q<<<5@GZ j<aK8D%K797O8OZ56AD h=>?@%$>$A4%B$$%@% C%3iO5A<H 9] ;[9PaMk9P8@59P8U78;8< 5=8O^@Dj6<BOlO5AMF9HO89P8 U7685=]O^@97<^<UZ;8< 9@==7X<I9?D > V <_V mVK On 56 76 9P 8 a <K << 5O5<_@=?A@;>9?X<I<mVKOn a<KKO5A9]V9[KfV69j6O5 AV<_VF<o<_9;Q<MN9P8Kj 9j6O5<H9]59:mV69\O5FOF7<X<H7f GVHD: !"#$% 'p%p% $$$$ Trang LI NÓI U 1 LI CM N 2 LÝ DO CHN TÀI 3 MC LC 4 MÔ HÌNH CLIENT – SERVER 12 Client 13 Server 13 CU TRÚC VÀ CÁC TH HTML 14 I. Khái nim c bn v Web 14 II. Cu trúc ca mt trang Web 14 III. Các th HTML thông dng 15 IV. Các th HTML c bit 20 CLIENT SCRIPT VÀ JAVASCRIPT 23 I. Gii thiu v JavaScript 23 II. Tham chiu n th HTML 24 III. Mt s bin c thng gp trong JavaScript 25 IV. Mt s phng thc thng gp trong JavaScript 26 V. Bin trong JavaScript 26 VI. Phát biu có iu kin 27 VII. Các phng thc kim tra d liu 29 VIII. Javascript Object Model 30 IX. i tng MATH và các phng thc 32 X. i tng DATE và các phng thc 32 XI. Các s kin trong JavaScript 34 H QUN TR CSDL MySQL 37 I. Gii thiu v CSDL MySQL 37 II. To CSDL và ngi dùng 38 III. Các kiu d liu trong MySQL 42 IV. Phát biu SQL 47 V. Phát biu dng JOIN 51 LP TRÌNH PHP 55 I. Gii thiu v PHP 55 II. Nhúng PHP vào trang HTML 57 III. Bin trong PHP 58 IV. Bin ca Apache 67 GVHD: !"#$% V. Kim tra bin 68 VI. Cu trúc iu khin 68 VII. Hng i tng trong PHP 74 NI DUNG ÁN 76 I. Gii thiu 76 II. Ni dung 76 III. S dng 77 III.1. Giao din vi ngi dùng 77 III.2. Chc nng ca Website 79 III.3. Cp nht thông tin ca sinh viên 83 III.4. Qun lý ngi dùng 86 IV. Vn trong vic vit chng trình 88 IV.1. Tr ngi vi Session 88 IV.2. Gii quyt vn phân trang 88 IV.3. Vn ng nhp và nút Back trên trình duyt 89 V. K thut trong lp trình 89 V.1. Phong cách trong lp trình 90 V.2. Trình bày mã lnh 91 V.3. Vn vi bin 92 KT QU T C VÀ HNG PHÁT TRIN 93 I. Kt qu t c 93 II. Nhng hn ch 93 III. Hng phát trin 93 TÀI LIU THAM KHO 94 NHN XÉT CA GIÁO VIÊN HNG DN 95 GVHD: !"#$% 'q-r -%s tEsuRsu $$$$ in trúc cn bn nht mt trang Web ng (Dynamic Web) hot ng c là nó phi làm vic trên m hình Client – Server (Xem hình), hay nói mt cách khác là Client – Server là nhng i tng riêng bit, chúng phi m ng nhng công vic riêng, nhng cùng hng v mt kt qu chung nht là cho ra mt trang Web ng. Khác hn vi nhng công vic son tho vn bn hng ngày, ni mà chúng ta chng cn quan tâm n các khái nim nh Client hay Server! Nhng khi bc vào th gii Internet, có vô vàng nhng Website ra i, tip cn và to ra nhng trang Dynamic nh th, khái nim Client – Server là mt trong nhng khái nim rt quan trng mà nhng ai mun chinh phc nh cao ca th gii thông tin cn phi bit! ng dng Web là th! Phi có mt mô hình Server, có th ch là mt máy ch thôi, nhm tp trung hóa x lý d liu, còn Client, hay hiu mt cách khác ó là máy tính ca ngi s dng ni mng vi Server, giã s chúng ta ngi trên mi máy tính khác nhau, nhng cùng truy cp vào mt Website, iu ó có ngh a là chúng ta ang truy cp n Server ly d liu và hin th! v máy tính ca mình! Nói rng hn, có hàng trm, hàng ngàn ngi cùng truy cp vào mt Website c x lý tp trung trên Server! Chúng ta hãy b"t u vi nhng khái nim này! K GVHD: !"#$% CLIENT (Trình khách) Nh chúng ta ã bit, HTML là ngôn ng kh#i thy cho trình duyt Web, HTML cung cp hàng ngàn th$ lnh <TAB> cho phép hin th! ni dung ca trang Web theo nhiu kiu khác nhau, theo nhiu !nh dng khác nhau! %ây chính là nhng gì mà trình duyt gi v phía User t& Server! Tuy nhiên, chúng ta không nên mt nhiu thi gian hiu sâu v HTML. SERVER (Trình ch) Hu ht các 'ng dng Web u hot ng trên trình ch Server, 'ng dng (c trng gi là Web Server s) m nhn nhim v giao tip vi các Browser (trình duyt). Mt c s# d liu trên Server s) lu toàn b nhng thông tin áp 'ng yêu cu cho công vic ca 'ng dng Web. Tuy nhiên, chúng ta cn có mt ngôn ng lp trình vi vai trò là cu ni liên lc gia Web Server và c s# d liu. Ngôn ng này c*ng có nhim v là x lý thông tin gia Server và Client. GVHD: !"#$% %v#uw%R4%x%-y-' $$$$ DE)F"GH=I/ Trên Internet, Web luôn tn ti di hai dng là Web tnh và Web ng. Trang Web tnh là trang HTML bình thng không thao tác n c s# d liu, còn trang Web ng thì ngc li, ó là trang Web có thao tác n c s# d liu. %iu này có ngh a là khi trang Web c Refresh (làm ti), ni dung trình bày trên trang Web c c t& c s# d liu. Nói mt cách khác, dù là trang Web tnh hay ng, nu bn mun ngi dùng s dng chúng trình bày d liu trên trình duyt Web, bn cn phi khai báo các th$ HTML bên trong theo mt quy lut nht !nh. % trang Web trình bày d liu theo nh ý ca bn trên Brower, bn cn phi khai báo các th$ HTML và các k!ch bn trình khách (Client Script) phù hp vi chu+n HTML và Client Script. Ngoài ra, mi trình duyt h, tr thêm các th$ khác, nhm cho phép ngi dùng phong phú hóa giao din ca trang Web. Hai trình duyt ph, bin nht hin nay là Internet Explorer (IE) và Netscape (NC). % xây d-ng mt 'ng dng Web hoàn chnh và mang tính cht thng mi, bn cn phi kt hp cã Client Script và Server Script (Kch bn trên trình khách và kck bn trên trình ch) vi mt loi c s# d liu nào ó, chng hn nh: Microsoft Access, SQL Server, MySQL,… Cho dù bn có s dng Server Script nào i na, thì v.n không ph thuc vào Client Script. D"J-KL""MFNK(=I/ Nh ã nói trên, trang Web trình bày d liu trên trình duyt di dng HTML. HTML (Hyper Text Markup Language) là mt ngôn ng ánh du siêu vn bn c dùng trong d!ch v Web ca Internet cho phép !nh dng các khuôn dng ca thông tin và cách mà trình duyt Web hin th! thông tin cho các ngi dùng. Các thông tin trên Web c t, ch'c theo dng có cu trúc. HTML !nh ngh a các cu trúc này thông qua các th$ (Tag). Mi cu trúc c !nh ngh a thông qua mt th$ hay mt c(p th$. Cu trúc ca mt tài liu HTML c b"t u bng th$ m# <HTML> và kt thúc bng th$ óng </HTML>. Trang HTML thng có phn m# rng là .htm, .html, .jhtm, .phtm, nhng ph, bin và hay dùng hn cã là .htm hay .html. C(p th$ này s) bao tt cã các th$ khác có trong trang Web. GVHD: !"#$% HTML không phân bit ch hoa hay thng, ví d nu th$ m# là <HTML>, thì các th$ </Html> hay </HTML> u là th$ óng. Nên chú ý là không có khong tr"ng bên trong !nh ngh a th$! HTML có hai loi th$, loi th$ m# phi có th$ óng, và loi th$ m# không có th$ óng (th n). Ví du: <HTML>…</HTML> Là loi th$ m# phi có th$ óng. <BR> hay <HR> Là loi th$ n. Cu trúc ca mt tài liu HTML: <HTML> <HEAD> <TITLE>Tieu de trang Web</TITLE> <META…> <LINK…>…</LINK> <SCRIPT….>…</SCRIPT> </HEAD> <BODY> Than trang Web </BODY> </HTML> D"E"OF'(*P( 1.Th <HEAD>…</HEAD>: Tt cã thông tin ch'a trong th$ này u không xut hin trên trang Web, iu này có ngh a là bn có th khai báo các th$ khác bên trong c(p th$ này nh <TITLE>, <META>, <SCRIPT>,… 2.Th <TITLE>…</TITLE>: Th$ này giúp bn trình bày tiêu trên trang Web, c hin th! tiêu trên thanh tiêu ca trình duyt, thí d: <TITLE>Do an mon hoc II</TITLE> 3.Th <BODY>…</BODY>: Phn thân ch'a thông tin chính ca trang Web c (t bên trong c(p th <BODY> và </BODY>. Tt cã thông tin c trình bày trong th này u xut hin trên trang Web. Vì th, bn có th trình bày ni dung và các th !nh dng khác trong c(p th này. <BODY BACKGROUND=“ULR” BGCOLOR=#XXYYZZ TEXT= “#XXYYZZ”> Noi dung phan than cua trang Web </BODY> %!nh ngh a phn phân ca trang Web. [...]... D _& "G ` *Z )- ] (UV *a ( II.1 K t n i và t o CSDL: Có 2 cách - k t n i v i CSDL MySQL: K t n i b"ng dòng l nh Command Line: T& giao di n c a DOS, b n tr/ n th m c bin c a MySQL, trong tr ng h p 'ng d ng án môn h c là th m c WWW\MySQL\bin n m trong a Dv i ng d.n y là D:\WWW\MySQL\bin, b n g/ l nh mysql.exe kích ho t t p tin này ch y M t màn hình m i xu t hi n chào ón b n! Màn hình chào ón c a MySQL... GVHD: -‰ g #& uŠ %E1 '6Eg $$ D( Q )- H " * F $$ , CSDL là 1 ph n quan tr ng không th th thi u c trong các 'ng d ng Web chuyên nghi p MySQL t& lâu ã là h CSDL c dùng ph, bi n nh t v i PHP vì tính g n nh2, nhanh, mi1n phí và c PHP h tr s n M(c dù MySQL c ph, bi n r t nhi u nh ng nó v.n có nh ng i th áng g m c nh tranh v i nó Nh ng i th c a nó có th tr i h n nó v m t ph ng di n nào ó % i v i MySQL, v i nh... o xong, b n s) nhìn th y trong th m c data c a MySQL có c s# d li u mà b n ã t o II.2 Qu n lý ng i dùng: % ng nh p vào h th ng MySQL, n u s d ng Command Line, t i d u nh"c l nh, b n g/ vào mysql –h hostname –u username –p, n u s d ng giao di n h a, b n g/ thông tin ng nh p vào các ô textbox T& khóa –h ch tên, IP hay localhost c a máy có s d ng MySQL T& khóa –u là tên username , -p c ch !nh khi username... màn hình m i xu t hi n chào ón b n! Màn hình chào ón c a MySQL trên giao di n DOS T& giao di n này, b n có th th-c hi n các l nh c a MySQL tai d u nh"c l nh N u b n mu n nh h th ng tr giúp c a MySQL, t i d u nh"c l nh, b n g/ d u ? MySQL li t kê các phát bi u nh connect, exit, quit,… ! " # $% GVHD: Màn hình HELP c a MySQL % t o m t c s# d li u, b n b"t u v i l nh: Create database tencosodulieu; Trong... môi tr ng N u b n ang có k ho ch chu+n b! cho m t ngân hàng ch ng h n, thì &ng bao gi ch n MySQL, b#i MySQL không thích h p cho b n! Nó ch dùng cho nh ng 'ng d ng v&a và nh/ mà thôi! Tuy nhiên, i v i ph n ông ng i dùng và ph n l n các 'ng d ng Web, MySQL là s- l-a ch n thích h p i v i h b#i nó thích h p v i nh ng 'ng d ng v&a và nhõ! % i v i các h qu n tr! l n nh Oracle, Sysbase và Infomix, và t t... thì MySQL h, tr tuy t v i v t c Ngay cã nhà s n xu t ra nó c ng t- hào v (c i m này! % i v i chúng ta, không có s- l-a ch n nào t t h n MySQL! MySQL c c i thi n liên t c v i m t t n s không ng Các nhà phát tri1n c p nh t nó m t cách th ng xuyên, cho n th i i m này ã có phiên b n 5 v i giao di n Windows c-c k0 2p m"t, ngoài ra còn b, sung các tính n ng r t n t ng cho nó m i lúc m i n i! Hi n nay MySQL... Nh v y MySQL ã th-c s- tr# thành m t h qu n tr! c s# d li u chuyên nghi p r i! ! " # $% GVHD: MySQL là c s# d li u c s d ng cho các 'ng d ng web v&a và nh/ Tuy không ph i là m t c s# d li u l n, nh ng chúng c*ng ã có trình giao di n trên Window hay Linux, cho phép ng i dùng có th thao tác các hành ng liên quan n c s# d li u C*ng gi ng nh các h c s# d li u khác, khi làm vi c v i c s# d li u MySQL, b... i! Nh ng giá thành quá cao không phù h p v i túi ti n c a chúng ta! Tuy nhiên, v i m t 'ng d ng v&a và nhõ, t i sao chúng ta l i ph i ch n m t h qu n tr! kh,ng l nh th ? Vì v y, MySQL là s- l-a ch n úng "n! MySQL hoàn toàn mi1n phí, chúng ta có th ch n nó mà không c n ph i chu+n b! b t k0 tài kho n nào! MySQL không có y * nh ng ch'c n ng nh m t h qu n tr! chuyên nghi p Nh ng i v i công vi c th ng nh... SINHVIEN án môn h c, chúng ta t o m t CSDL có tên Sau khi th-c hi n dòng l nh trên, b n vào th muc bin c a MySQL ki m tra xem, c s# d li u SINHVIEN ã c t o hay ch a, nó có hình d ng nh m t th m c - K t n i b"ng giao di n % h$a: Trong tr ng h p k t n i b ng giao di n h a, b n tìm và ch y t p tin MySQLFRONT.exe, c a s, xu t hi n nh hình bên: T i c a s, này, b n hãy nh p User và Password c a b n vào r i... a vào m t s ký t- khóa, do ó ph i dùng m t s quy c khi s d ng các ký t- này nh các v n b n trong tài li u HTML < Dùng thay cho ký t- < > Dùng thay cho ký t- > & Dùng thay cho ký t- & $quot Dùng thay cho ký t- “” IV.2 Khung (Frame) Khung c xem nh là m t trang Web c l p c chen vào bên trong m t trang Web khác M i khung con s) có m t Scrollbar . Web</TITLE> <META…> <LINK…>…</LINK> <SCRIPT….>…</SCRIPT> </HEAD> <BODY> Than trang Web </BODY> </HTML> D"E"OF'(*P( 1.Th. <B>…</B>, <I>…</I>, <U>…</U>: <B>…</B> : %!nh dng ch! "m. <I>…</I> : %!nh dng ch nghiên. <U>…</U> : %!nh dng ch dng. du: <HTML>…</HTML> Là loi th$ m# phi có th$ óng. <BR> hay <HR> Là loi th$ n. Cu trúc ca mt tài liu HTML: <HTML> <HEAD> <TITLE>Tieu