Lập trình Web động với PHP/MySQL (Phần 1) - Tống Phước Khải

Kiến trúc căn bản nhất để trang Dynamic Web hoạt động được là nó phải làm việc

trên mô hình client/server. Nôm na là mỗi thứ client hay server đều đảm đương một

chức năng riêng để hoàn thành công việc chung đó là cho ra một trang Web động.

Các bạn có lẽ đã quen thuộc với chương trình WinWord để soạn văn bản, nó có thể

hoạt động độc lập trên bất kỳ máy tính nào chẳng cần quan tâm tới cái gì là client hay

cái gì là server. Ứng dụng Web thì khác hẳn, phải có một mô hình server có thể làmột máy tính làm server thôi, nhằm tập trung hoá việc xử lý dữ liệu. Còn các client,

còn được hiểu nôm na là máy tính của người sử dụng phải được nối mạng với server,

giả sử các máy này truy cập vào một Website chẳng hạn, thì có nghĩa họ đã truy cập

vào server, sau đó lấy dữ liệu từ server về thể hiện lên máy mình. Cùng một lúc có

thể có hàng trăm người (client) truy cập vào cùng một Website được xử lý tập trung

trên server, tương tự như một đám trẻ xúm nhau giành phần của mình từ một cái bánh.

 

pdf20 trang | Chuyên mục: PHP | Chia sẻ: tuando | Lượt xem: 514 | Lượt tải: 1download
Tóm tắt nội dung Lập trình Web động với PHP/MySQL (Phần 1) - Tống Phước Khải, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
g trình mở rộng tính năng của Apache. PHP hoạt 
động với tư cách là một phần mở rộng của Apache, và người ta gọi là một module của 
Apache. 
Apache có tính ổn định và tốc độ đáng phải nói. Tuy nhiên, cũng có một số sự phàn 
nàn về nó là không hỗ trợ công cụ đồ hoạ trực quan, điều có thể giúp người ta làm 
việc một cách dễ dàng hơn. Bạn phải thực hiện các thay đổi đối với Apache bằng 
cách sử dụng dòng lệnh, hoặc sử các tập tin text trong folder chương trình Apache. 
Nếu lần đầu đến với Apache thì bạn sẽ gặp một chút lạ lẫm. 
Mặc dù Apache chỉ làm việc tốt trên Unix, nhưng cũng có những phiên bản chạy tốt 
trên hệ Windows. Không một ai, kể cả các nhà phát triển Apache đề nghị rằng 
 Apache nên được chạy trên một server Windows bận rộn. Nếu bạn quyết định chọn 
HĐH Windows cho server thì bạn nên sử dụng IIS. Nếu bạn thử nghiệm ứng dụng 
trên Windows và sau đó đem upload và chạy trên Unix/Apache của nhà cung cấp host 
thì cũng không hề hấn gì, ứng dụng của bạn vẫn chạy ngon lành. 
Middleware 
PHP thuộc lớp ngôn ngữ lập trình gọi là middleware. Các ngôn ngữ này hoạt động 
cận kề với Web Server để thông dịch các yêu cầu từ trên World Wide Web, sau đó 
nhận các trả lời từ Web Server chuyển tải đến trình duyệt Web nhằm đáp ứng các 
yêu cầu đó. 
Middleware là nơi mà bạn sẽ thực hiện các khối lượng rất lớn công việc chính yếu 
của bạn. Với hỗ trợ này Web Server của bạn sẽ không phải cán đáng quá nhiều khối 
lượng công việc. Nhưng khi bạn phát triển ứng dụng của bạn, bạn sẽ tốn nhiều thời 
gian viết mã chương trình để cho chương trình của bạn có thể hoạt động được. Ngoài 
PHP ra có một số ngôn ngữ khác có chức năng tương đương như ASP, Perl, 
ColdFusion. 
 Hệ CSDL quan hệ 
Relational Database Management Systems (Hệ Quản trị Cơ Sở Dữ Liệu Quan hệ - 
RDBMSs) cung cấp phương thức tuyệt vời để lưu trữ và truy xuất lượng thông tin lớn 
và phức tạp. Nó đã ra đời khá lâu. Thực tế, nó có trước Web, Linux và WindowsNT, 
cho nên không có gì ngạc nhiên khi có quá nhiều hệ CSDL để chọn lựa. Tất cả các 
CSDL này đề dựa trên cơ sở SQL (Structure Query Language). 
Một số hệ phổ biến như Oracle, Sysbase, Informix, Ms SQL Server, IBM's DB2. 
Hệ nguồn mở thông dụng hiện nay là MySQL mà quyển sách này đề cập đến, ngoài 
ra còn có hai hệ nguồn mở khác là PostgresSQL đã một thời thay thế MySQL và 
Interbase là bộ nguồn mở của Borland giới thiệu vào tháng 8/1999. 
Tại sao sử dụng PHP và MySQL 
Tại sao có quá nhiều chọn lựa như vậy mà chúng ta lại phải chỉ lấy ra cặp bài trùng 
PHP/MySQL mà thôi? Tôi sẽ giải thích điều naỳ ở phần sau. 
 Nói về PHP 
Các ngôn ngữ lập trình xem ra giống như các loại giày dép. Có loại có vẻ bắt mắt với 
một số người này, nhưng lại khó ưa với người khác và ngược lại. Một số người chỉ 
thích sử dụng một hiệu giày nào đó đã quen thuộc và ngôn ngữ lập trình cũng tương tự 
như vậy. 
Ở đây tôi muốn ngụ ý với các bạn là khi lập trình Web, các ngôn ngữ lập trình đều 
cho kết quả gần giống nhau. Câu hỏi ngôn ngữ nào tốt nhất không phải là vấn đề nó 
không có khả năng thực hiện một số chức năng nào đó mà thường là nó có làm cho 
bạn thực hiện công việc một cách nhanh chóng và đỡ nhọc công hay không? 
Tốc độ nhanh, dễ sử dụng 
Chúng ta hãy bàn về tốc độ. Có 3 thứ mà tôi chắc chắn khi bàn về việc so sánh tốc độ 
giữa các ngôn ngữ lập trình Web. Thứ nhất, ứng dụng viết bằng C chạy nhanh nhất. 
Thứ hai, công việc lập trình C khá là phức tạp, và sẽ ngốn nhiều thời gian hơn. Thứ 
ba, việc so sánh giữa các ngôn ngữ là một điều khó khăn. Tất cả những gì tôi biết là 
tôi cảm thấy yên tâm khi nói rằng PHP cũng nhanh như các ngôn ngữ khác. Trở lại ví 
 dụ so sánh với các loại giày dép: Vina, Đông Hải, Kiến Hoa, Hồng Thạnh, Italy v.v., 
chắn chắn bạn sẽ chọn loại tiện dụng nhất? Nếu bạn giống như tôi, bạn sẽ cảm thấy 
rằng PHP có đầy đủ các đặc tính như khả năng, cấu trúc và dễ sử dụng. Xin nói thêm, 
đây chỉ là cách nhìn riêng của tôi thì tôi tin rằng cú pháp PHP tuyệt hơn ASP hay JSP. 
Và theo tôi thì việc gõ lệnh PHP nhanh hơn ColdFusion và nó không khó học như 
Perl. Tóm lại, tôi cho rằng PHP cung cấp các tính năng mạnh mẽ để thực hiện ứng 
dụng Web một cách nhanh chóng. 
Chạy trên nhiều hệ điều hành 
Như đã trình bày ở phần kiến trúc web, tôi có nói là PHP có thể chạy trên 
WindowsNT/2000/2003 và Unix với sự hỗ trợ của IIS và Apache. Nhưng ngoài ra nó 
có thể chạy trên một số các platform khác như Netscape, Roxen, hay một vài thứ 
khác. Như chúng ta biết ASP có thể chạy trên Unix, ColdFusion có thể chạy trên 
Solaris và Linux, JSP có thể chạy trên khá nhiều loại platform. Đối với PHP, nó có 
thể chạy tốt trên những platform hỗ trợ các chủng loại trên. 
Truy cập bất kỳ loại CSDL nào 
Ứng dụng của bạn dự định sẽ truy cập những loại dữ liệu dịch vụ nào? LDAP, IMAP 
mail server, DB2, hay XML parser hay WDDX. 
Bất kể bạn cần đến thứ gì thì PHP cũng sẵn sàng hỗ trợ thông qua các hàm được xây 
dựng sẵn nó sẽ làm công việc của bạn trở nên rất dễ dàng và tiện lợi. Nhưng nếu như 
có một số thứ chưa được xây dựng sẵn thì sao? Ta tiếp tục sang phần sau sẽ rõ. 
Luôn được cải tiến & cập nhật 
Nếu như bạn cảm thấy bỡ ngỡ đối với việc phát triển nguồn mở, bạn có lẽ sẽ ngạc 
nhiên đối với chất lượng của loại phần mềm này. Có hàng ngàn những chuyên gia lập 
trình xuất sắc đợi sẵn và họ sẵn sàng bỏ thời gian ra để tạo những phần mềm tuyệt 
vời và hầu như miễn phí. Đối với ngôn ngữ thịnh hành như PHP thì ắt hẳn là các rất 
nhiều các nhà lập trình đang thực hiện phát triển nó hằng ngày. 
 Sự thật có một việc rất ấn tượng là nếu như bạn có một sự cố kỹ thuật, bạn có thể gởi 
email đến một nhà phát triển PHP các chi tiết sự cố đó. Chỉ trong vòng vài giờ bạn sẽ 
nhận được sự trả lời thoả đáng. 
Khi PHP4 được phổ biến, nó đã trở thành một hiện tượng của ngôn ngữ lập trình. Nó 
giúp cho việc bổ sung số lượng lớn các hàm chức năng một cách dễ dàng. Nếu như 
ngôn ngữ đã có sẵn nhiều hàm đặc thù cho công việc thì bạn sẽ đỡ tốn công hơn cho 
việc lập trình của mình. 
Được hướng dẫn kỹ thuật bất cứ lúc nào 
Hầu hết các ngôn ngữ đều hỗ trợ active mailing list (hiểu nôm na là danh sách mail 
những thành viên trực chiến hỗ trợ kỹ thuật) và các development site (trang web hỗ 
trợ giải quyết kỹ thuật). PHP cũng không ngoại lệ. Nếu bạn gặp phải sự cố - gặp 
những lỗi trong chương trình và không tìm ra cách khắc phục - sẽ có hàng trăm người 
có tên trong danh sách mail luôn sẵn lòng kiểm tra và khắc phục sự cố cho bạn. 
Bộ nguồn mở PHP thật sự đã tạo ra một tình cảm của cả cộng đồng. Khi bạn gặp phải 
khó khăn đối với nó thì lúc nào cũng có những đồng môn chia sẻ nỗi lòng đó và giúp 
bạn khắc phục nhằm đem lại niềm vui cho bạn. 
 Hoàn toàn miễn phi$ 
Bạn không ngại gì về vấn đề bản quyền khi bạn sắm một máy vi tính và cài lên đó 
những phần mềm như Linux, Apache, PHP vì tất cả đều miễn phí. 
Free!
 Nói về MySQL 
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 
đang cạnh tranh với nó. Những đối thủ của nó có thể trội hơn về một phương diện đặc 
thù nào đó. 
Trong phần trên, chúng ta đã bàn sơ qua MySQL. Trong phần này, bạn sẽ được biết 
về những đặc điểm của những Hệ quản trị CSDL khác mà MySQL không hỗ trợ. 
Với những hạn chế đó đã làm cho MySQL không được chọn để chạy trên một số các 
môi trường. Nếu bạn đang có kế hoạch bắt đầu cho một ngân hàng chẳng hạn, thì tôi 
khuyên bạn là MySQL không thích hợp cho bạn. 
Nhưng đối với phần đông mọi người và phần lớn các ứng dụng, MySQL là sự chọn 
lựa của họ bởi nó rất thích hợp cho những ứng dụng Web. 
Vừa túi tiền 
Hãy nghĩ bạn cần cài đặt Oracle. Hãy chuẩn bị hầu bao của mình khoảng 30.000 đến 
100.000 USD hoặc thậm chí còn hơn thế nữa. Điều hiển nhiên là Oracle, Sysbase và 
 Informix là những Hệ Quản trị CSDL tuyệt vời, nhưng giá thành quá cao, không hợp 
với túi tiền của phần đông mọi người. 
MySQL hoàn toàn miễn phí. Bạn có thể sử dụng mà không cần chuẩn bị bất kỳ khoản 
tiền nào. 
Nhanh và mạnh 
MySQL không có đầy đủ những cơ sở vật chất cho một Hệ Quản trị CSDL chính tông, 
nhưng đối với công việc thường nhật của phần đông mọi người thì nó cung cấp cũng 
khá nhiều thứ. Nếu công việc của bạn là lưu trữ dữ liệu trên Web hoặc làm một trang 
Thương mại Điện tử cỡ vừa, thì MySQL có đủ những thứ bạn cần. 
Đối với những CSDL cỡ trung bình thì MySQL hỗ trợ tuyệt vời về tốc độ. Các nhà 
phát triển MySQL rất tự hào về tốc độ sản phẩm của họ. Với các ứng dụng mà tôi 
giới thiệu trong phần III và IV của quyển sách này, thì bạn khó có thể kiếm được một 
Hệ Quản trị CSDL nào đạt được tốc độ nhanh hơn nó. 

File đính kèm:

  • pdflap_trinh_web_dong_voi_phpmysql_phan_1_tong_phuoc_khai.pdf
Tài liệu liên quan