Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 48 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
48
Dung lượng
115,33 KB
Nội dung
LẬPTRÌNH WEB ĐỘNG VỚIPHP / MySQL ❖ GUESTBOOK ❖ CATALOG ❖ FORUM ❖ SHOPPING CART PHẦN Tống Phước Khải (tổng hợp& biên dòch) Giới thiệu Chúng ta thực chuyến thần thoại, chuyến khám phá ngoại nội MySQLPHP cách thật tỉ mỉ Đây làmột hành trình đầy thú vò bất ngờ Okie, có lẽ lạc quan phải không bạn Nếu bạn đồng quan điểm với phương diện đó, hành trình bạn có giúp đỡ gặp phải nhàm chán Hãy đối mặt thật nhé: Trò chơi lậptrình ứng dụng lúc dễ nuốt đâu Trong thám hiểm chắn bạn phải có giây phút nản lòng, lúc gặp phải cố lỗi cú pháp đoạn mã không cho kết mong muốn Nhưng việc ra, nghó có lý thật đáng đến bạn đến với Lậptrình Web chơi đầy hứa hẹn tương lai Bất kể bạn có kiến thức sở lậptrình cho loại ngôn ngữ Visual Basic, Cobol, hay bạn biết HTML JavaScript, hôm bạn có hội để nắm bắt kinh nghiệm mẻ lậptrình ứng dụng Web Tôi nghó kết hợp tốt PHPMySQL Số lượng người sử dụng ngôn ngữ gia tăng, PHPMySQL trở thành thông dụng, đòi hỏi lượng người biết công cụ lậptrình tăng theo Một chút xíu nói rõ cho bạn biết lại phải sử dụng PHPMySQL Nhưng trước hết muốn bạn khảo sát qua kiến trúc sơ ứng dụng Web Vì bạn nắm bắt điều tiếp tục trình bày chi tiết PHPMySQL trung tâm môi trường phát triển ứng dụng Web Trước tiếp tục, nghó bạn đọc giới thiệu hiểu Chúng ta tiếp tục thôi! Kiến trúc Kiến trúc để trang Dynamic Web hoạt động phải làm việc mô hình client/server Nôm na thứ client hay server đảm đương chức riêng để hoàn thành công việc chung cho 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, hoạt động độc lập máy tính chẳng cần quan tâm tới client server Ứng dụng Web khác hẳn, phải có mô hình server máy tính làm server thôi, nhằm tập trung hoá việc xử lý liệu Còn client, hiểu nôm na máy tính người sử dụng phải nối mạng với server, giả sử máy truy cập vào Website chẳng hạn, có nghóa họ truy cập vào server, sau lấy liệu từ server thể lên máy Cùng lúc có hàng trăm người (client) truy cập vào Website xử lý tập trung server, tương tự đám trẻ xúm giành phần từ bánh Client (người Việt tạm đọc klai-ờn) Các ứng dụng mà bạn phát triểân MySQLPHP sử dụng tính single client trình duyệt Web Tuy nhiên, ngôn ngữ để phát triển ứng dụng Web Đối với ứng dụng phức tạp đòi hỏi multi-client cần tính bảo trì (chúng ta bàn tính sau), ứng dụng Java applet hữu dụng cho việc Chỉ trừ trường hợp bạn cần sử dụng ứng dụng thời gian thực ứng dụng chat chẳng hạn, bạn Java Applet cần thiết Ở không bàn tới lập ứng dụng cho chuyện tán gẫu mà tập trung vào ứng dụng duyệt Web nên không đụng chạm tới Java Applet Như bạn biết ngôn ngữ khởi thuỷ cho việc duyệt Web HTML HTML cung cấp hàng tá thẻ lệnh (Tag) cho phép thể trang Web theo nhiều kiểu cách khác Nếu bạn chưa có kiến thức sở HTML chạy mua sách download internet xuống học hướng dẫn Bạn không nên bỏ nhiều thời gian để học HTML Ngoài HTML trình duyệt Web cho phép add-in hỗ trợ nhiều thứ khác RealPlayer, Flash, Shockwave, hỗ trợ Javascript XML Nhưng tập trung cần thiết cho hội nhập bạn – HTML Server (người Việt tạm đọc sơ-vơ) Hầu hết ứng dựng Web hoạt động tập trung Server Một ứng dụng đặc trưng gọi Web Server đảm trách việc giao tiếp vớitrình duyệt Một Cơ sở liệu (CSDL) Server lưu trữ tất thông tin đáp ứng yêu cầu cho công việc ứng dụng Web Kế tiếp, bạn cần phải có ngôn ngữ làm vai trò "chú bé liên lạc" Web Server CSDL server Ngôn ngữ thực công việc xử lý thông tin đến từ Web Server WEB SERVER (Apache, IIS) DATABASE SERVER (MySQL, SQLserver ) MIDDLE WARE (PHP, ASP, JSP) INTERNET WEB BROWSER (Internet Explorer, Netscape) Và dó nhiên thứ chẳng hoạt động không chạy Hệ Điều Hành (HĐH) Các thứ Web Server, Ngôn ngữ lập trình, CSDL phải hoạt động tốt HĐH Hệ điều hành Có nhiều chủng loại HĐH Windows 98/XP Linux có lẽ phổ biến với tất người Có trường hợp bạn làm việc HĐH mà biết tới bạn có ấn tượng thích sử dụng mà Hãy gác qua ý tưởng bạn thật muốn đường thiết kế web Hãy trang bò cho kiến thức HĐH WinNT /2000 /2003 Unix Việc làm có ích chuyện bảo người nên học khoá AS/400 Bạn sử dụng loại thứ nói đây? Okie, câu hỏi rắc rối Câu trả lời tuỳ thuộc bạn "tín đồ" HĐH Nếu bạn chưa rõ ràng điều này, để nói cho bạn nghe "chiến tranh giáo phái HĐH" Nếu bạn chưa hiểu nói gì, kiến thức bản: PHPMySQL thuộc nhóm phần mềm ứng dụng có tên gọi open source (nguồn mở) Việc có nghóa người dùng xem mã nguồn ứng dụng sử dụng PHP/MySQL Chúng tận dụng mô hình phát triển dựa vào nguồn mở, cho phép người cảm thấy thích góp phần vào việc phát triển dự án Trong trường hợp PHP, lậptrình viên toàn giới tham gia vào việc phát triển ngôn ngữ không trông chờ khoản lợi nhuận Phần lớn người tham gia công việc có niềm đam mê việc tạo sản phẩm phần mềm tốt, họ cảm thấy thích thú thấy người khác sử dụng công cụ họ bạn chẳng hạn Phương pháp nguồn mở ban đầu vòng lẩn quẩn mà thôi, sau trở thành đầy tiềm lực có đời trở nên phổ biến nguồn mở Linux Hầu nguồn mở miễn phí, bạn download, cài đặt sử dụng chúng mà không cần phải đợi cho phép hay phải trả tiền cho Phương thức Microsoft, Oracle hay số công ty lậptrình khác đáp ứng Nếu bạn tín đồ phái nguồn mở, chọn công cụ coi béo bở: NT/2000/2003 Nếu công ty bạn sử dụng sản phẩm Microsoft nhiều năm việc trở nên dễ dàng bạn muốn trì làm việc với môi trường Nếu bạn thành viên nhóm lậptrình Visual Basic, có lẽ bạn gắn bó với NT/2000/2003 Ngay trường hợp này, trở lực ngăn cản bạn công việc phát triển với công cụ PHPMySQL Bạn thử nghiệm PHP/MySQL HĐH Windows 95, 98, XP Web Server Chức Web Server không phức tạp Nó chỗ, chạy HĐH, lắng nghe yêu cầu Web gởi đến, sau trả lời yêu cầu này, cấp phát trang Web thích ứng Thực tế không đơn giản vậy, nhiệm vụ Web Server phải cung cấp tính ổn đònh cho môi trường Web đòi hỏi phải đáp ứng cách nghiêm túc Có nhiều loại Web Server khác nhau, chủ yếu thò trường thường sử dụng Apache IIS (Internet Information Server Microsoft) INTERNET INFORMATION SERVER (IIS) gắn liền với môi trường Windows thành phần thiếu Active Server Pages (ASP) Nếu bạn chọn đường Microsoft có lẽ bạn hiểu rõ IIS Trang kết hiển thò lời chào tuỳ thuộc vào giấc Tôi dùng hàm date PHP để lấy giấc Giá trò đem gán cho biến $var Kế đến chọn lựa sử dụng để đưa lời chào thích hợp Các bạn để ý chút, lệnh PHP kết thúc với dấu chấm phẩy (;) Trong phát biểu IF thấy dấu ngoặc nhọn { } chứa lệnh tuỳ thi hành tuỳ thuộc vào điều kiện Các điều kiện bao dấu ngoặc đơn ( ) Hàm date() lệnh echo hàng trăm hàm lệnh có PHP mà bạn học số cần thiết chúng chương sau Bây bạn tìm hiểu thêm số lệnh CSDL Lệnh PHP để kết nối Database (quan trọng) Bởi PHPMySQL máy bạn hai giới tách biệt Do đó, muốn dùng PHP để làm việc với CSDL bạn cần phải tạo sợi dây liên kết hai chiến hữu Vì có nhiều database MySQL, bạn cần phải bạn muốn sử dụng database MySQL Chúng ta thực sau: Dòng thực việc kết nối với Database Server nằm máy localhost, có username khai, password kkk Nếu kết nối thành công, thực bước kết nối với database nằm guestbook lệnh mysql_select_db() Các bạn nên lưu ý lệnh bạn sử dụng thường xuyên cho kết nối CSDL bạn, khuyên bạn nên lưu vào tập tin (dbconnect.php chẳng hạn), sau cần việc dùng lệnh include(‘dbconnect.php’); Nhập liệu vào Database Bởi database bạn chưa có user nào, hướng dẫn bạn viết lệnh để thực việc Nhưng trước tiên, bạn cần phải biết thêm chút biến PHP Ở phần trước bạn xem qua ví dụ có chứa biến, nhiên môi trường client/server, bạn cần phải làm việc với biến data từ client Bạn thường xuyên làm việc với form HTML (bạn tìm hiểu kỹ phần Phục lục A Chúng ta nên biết phần tử form có tên, bạn submit form tên phần tử trở thành biến script PHP form submit đến Với form sau, submit, biến $surname $submit tạo myscript.php Giá trò $surname mang giá trò mà user nhập vào Giá trò $submit chuỗi "submit" Tôi xin lưu ý với bạn lậptrình Web không giống dạng lậptrình khác chỗ không trạng thái tónh Để thể trang, Web Server phải trước hết nhận thỉnh cầu từ trình duyệt Giao thức sử dụng chúng HTTP, Hypertext Transfer Protocol Các yêu cầu bao gồm: trang web mà trình duyệt thấy, form data, loại trình duyệt sử dụng, đòa IP mà trình duyệt sử dụng Dựa vào thông tin mà Web Server đònh phục vụ Một server phục vụ yêu cầu trang web, trì kết nối vớitrình duyệt Thông thường, bạn cần biết cách thức để chuyển biến từ trang sang trang khác Bạn tìm thấy thao tác ứng dụng Ứng dụng giải vấn đề dựa theo cách thức: chuyển giao theo phẩn tử form ẩn, sử dụng cookies, sử dụng session Bây trở lại script sau: Bạn đònh cho hiển thò site dựa vào biến thông tin từ form HTML Thông thường, bạn kiểm tra form submit hay chưa cách kiểm tra biến $submit có chứa giá trò "submit" hay không Hãy bắt tay vào công việc Trang ứng dụng gọi sign.php có chứa form HTML Action create_entry.php Sau chi tiết dòng lệnh: Sign my Guest Book!!! Name: Location: Email: Home Page URL: Comments: Khi bạn điền đầy đủ thông tin form, thông tin chuyển đổi tới create_entry.php Chuyện phải làm trang kiểm tra xem form submit chưa Nếu rồi, nhận lấy giá trò nhập vào form sử dụng chúng để tạo query đồng thời gởi đến MySQL Bạn đừng lo lắng lệnh SQL, điều trước tiên cần biết thực việc chèn liệu vào table guestbook Tập tin create_entry.php sau: Thanks!! View My Guest Book!!! Trong lần create_entry.php gọi, form sign.php hiển thò Kế tiếp, liệu cập nhật vào CSDL Hình sau minh hoạ form hiển thò: sign.php create_entry.php Hiển thò liệu Database lên hình Bây liệu ghi vào CSDL guestbook Bạn cần thực việc xem liệu Nên nhớ lại phải sử dụng dbconnect.php nói với bạn trước Bạn cần phải cho hiển thò tất record table thông tin khách viếng thăm nhập vào Chúng ta thực script sau đặt tên view.php: View My Guest Book!! Sign My Guest Book!! Như thấy query MySQL truy cập tất hàng database Script thực việc cách sử dụng vòng lập thông qua biến $row Trong vòng lặp field record hiển thò Vd: print $row["email"] ghi hình record truy cập Khi chạy chương trình, tất field record hiển thò: view.php Chương trình upload lên internet chưa? Bây ứng dụng bạn hoàn tất Nếu bạn muốn upload web vừa tạo lên Server để thử nghiệm Nhưng muốn để trở thành site guestbook nghóa chưa đâu! Bạn cần phải làm nhiều thứ để liệu bạn không bò hacker quấy phá… (Còn tiếp) Lưu ý: Bạn tìm thấy CD thiết kế web PHP cửa hàng CD (Tôn Thất Tùng, tp.HCM chẳng hạn) Trên CD có trình cài đặt Apache, PHP, MySQL thông dụng FOX Ngoài có Website PHP mẫu CÁC LỆNH Ở BÀI HỌC TRÊN TỐT NHẤT BẠN NÊN GÕ LẠI, KHÔNG NÊN COPY! tongphuockhai@mail15.com - Kiến thức kho báu riêng Vì bạn đừng ngần ngại chia sẻ cho người [...]... 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... đặt MySQL có chứa tập tin mysql. exe ( /mysql/ bin) và gõ vào mysqlTại dấu nhấu nhắc lệnh hãy gõ lệnh để tạo ra một database mới: mysql> create database guestbook; Query OK, 1 row affected (0.00 sec) mysql> Bây giờ trong CSDL guestbook bạn cần phải có table chứa thông tin của khách Bạn hãy dùng lệnh create table từ dấu nhắc lệnh: mysql> use guestbook Database changed mysql> create table guestbook... bản Điều thú vò đối vớiPHP là cho phép bạn xen kẽ giữa lệnh HTML và lệnh PHP Do đó, PHP được xem như là một script giống như Javascript hay Vbscript Các lệnh của PHP được gói trong thẻ mở: Bây giờ bạn hãy thử chạy tập tin hi .php sau: mom Khi chạy bạn sẽ gõ vào: localhost/hi .php Kết quả cho ra là "Hi, mom" Ta thấy chữ "Hi," nằm trong tag lệnh PHP còn chữ "mom" thuộc... 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. .. sẽ biết mình cần đến những gì PHP Webserver Đây là ứng dụng chạy trên Web, cho nên bạn điều hiển nhiên là bạn cần phải có một Web Server Bạn sử dụng Apache, bạn cài lên Winserver2000/ 2003 hoặc 98, XP thông dụng của bạn Có một số phiên bản Apache có sẵn bộ cài đặt PHP trong đó Nếu chưa có bạn phải cài đặt thêm PHP Còn nữa, bạn phải cài MySQL Như vậy bộ ba Apache, PHP và MySQL luôn đồng hành với nhau... trong PHP mà các bạn sẽ được học một số cần thiết của chúng trong các chương sau Bây giờ bạn hãy tìm hiểu thêm một số lệnh về CSDL Lệnh PHP để kết nối Database (quan trọng) Bởi vì PHP và MySQL hiện tại trên máy của bạn vẫn còn là hai thế giới tách biệt nhau Do đó, muốn dùng PHP để làm việc được với CSDL bạn cần phải tạo ra sợi dây liên kết giữa hai chiến hữu này Vì có thể có rất nhiều database trong MySQL, ... khởi động MySQL Nếu bạn đã cài đặt MySQL trong Windows thì nó sẽ có biểu tượng để khởi động hoặc nó sẽ được tự động khởi động khi mở Windows lên Đối với MySQLAdmin version 1.1 cho phép bạn làm việc trong 2 giao diện: Windows và Dos Đối với giao diện Widows thì biểu tượng MySQL (biểu tượng đèn giao thông) nằm ở SystemTray, bạn chỉ việc click chuột phải lên nó và chọn Show me Cửa sổ làm việc của MySQL hiện... giữa một ngôn ngữ lậptrình và một Web Server Cũng vậy, PHP4 được tích hợp rất tối đối với IIS Trước đây, có một số vấn đề cần phải bàn về tính ổn đònh của PHP/ IIS với việc truyền tải lớn, nhưng PHP và IIS cũng đã được cải thiện liên tục nên việc này không còn đáng phải bận tâm APACHE là một kiểu mẫu Web Server rất phổ biến Giống như Linux, PHP, MySQL nó là một dự án nguồn mở Không có gì ngạc nhiên khi... trong MySQL theo giao diện Windows Tuy nhiên, tôi khuyên các bạn nên dùng tiện ích PhpMyAdmin, chương trình này hỗ trợ các thao tác đối với CSDL trong MySQLvới giao diện dễ sử dụng Trong phần này tôi hướng dẫn thêm bạn thực hiện thao tác với Database trong giao diện dòng lệnh MSDOS bởi vì các giao diện khác tôi nghó tự bạn có thể làm được Bật màn hình dòng lệnh DOS lên, chuyển sang thư mục cài đặt MySQL. .. rows affected (0.00 sec) mysql> Bạn đã có một CSDL tên là guestbook và một table ở trong CSDL này cũng tên là guestbook Bây giờ đã đến lúc chúng ta viết một ứng dụng bằng PHP để thực hiện các thao tác: xem, chèn, sửa, xoá các thông tin trong CSDL guestbook Viết lệnh PHP Bạn hãy dùng một chương trình soạn thảo văn bản đơn giản như Notepad chẳng hạn Đặt tên cho các tập tin là php, các tập tin này được ... Apache có sẵn cài đặt PHP Nếu chưa có bạn phải cài đặt thêm PHP Còn nữa, bạn phải cài MySQL Như ba Apache, PHP MySQL đồng hành với Bạn xem thêm phần cài Apache server CD thực hành PHP xem Diễn đàn... đặt MySQL có chứa tập tin mysql. exe ( /mysql/ bin) gõ vào mysql Tại dấu nhấu nhắc lệnh gõ lệnh để tạo database mới: mysql> create database guestbook; Query OK, row affected (0.00 sec) mysql> ... tốt PHP MySQL Số lượng người sử dụng ngôn ngữ gia tăng, PHP MySQL trở thành thông dụng, đòi hỏi lượng người biết công cụ lập trình tăng theo Một chút xíu nói rõ cho bạn biết lại phải sử dụng PHP