Tham khảo tài liệu ''lập trình web động với php và my sql'', công nghệ thông tin, quản trị web phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
LẬP TRÌNH WEB ĐỘNG VỚI PHP / 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 MySQL PHP cách thật tỉ mỉ Đây 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ập trì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ập trình Web chơi đầy hứa hẹn tương lai Bất kể bạn có kiến thức sở lập trì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ập trình ứng dụng Web Tôi nghó kết hợp 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 MySQL 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 Lap trinh Web dong voi PHP / MySQL Page chi tiết PHP MySQL 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 Các ứng dụng mà bạn phát triểân MySQL PHP 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 Lap trinh Web dong voi PHP / MySQL Page Nhưng tập trung cần thiết cho hội nhập bạn – HTML Server 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ới trì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 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 Lap trinh Web dong voi PHP / MySQL Page 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: PHP MySQL 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ập trì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ập trì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ập trì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ụ PHP MySQL 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 Lap trinh Web dong voi PHP / MySQL Page 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 Có tích hợp định ngôn ngữ lập trình Web Server Cũng vậy, PHP4 tích hợp tối IIS Trước đây, có số vấn đề cần phải bàn tính ổn định PHP/IIS với việc truyền tải lớn, PHP IIS cải thiện liên tục nên việc không đáng phải bận tâm APACHE kiểu mẫu Web Server phổ biến Giống Linux, PHP, MySQL dự án nguồn mở Không có ngạc nhiên người ta thấy Apache hỗ trợ tốt môi trường Unix, tốt Windows Apache tận dụng tính third-party Bởi nguồn mở nên có khả viết chương trình mở rộng tính Apache PHP hoạt động với tư cách phần mở rộng Apache, người ta gọi module Apache Apache có tính ổn định tốc độ đáng phải nói Tuy nhiên, có số phàn nàn không hỗ trợ công cụ đồ hoạ trực quan, điều giúp người ta làm việc cách dễ dàng Bạn phải thực thay đổi Apache cách sử dụng dòng lệnh, sử tập tin text folder chương trình Apache Nếu lần đầu đến với Apache bạn gặp chút lạ lẫm Mặc dù Apache làm việc tốt Unix, có phiên chạy tốt hệ Windows Không ai, kể nhà phát triển Apache đề nghị Apache nên chạy server Windows bận rộn Nếu bạn định chọn HĐH Windows cho server bạn nên sử dụng IIS Nếu bạn thử nghiệm ứng dụng Windows sau đem upload chạy Unix/Apache nhà cung cấp host không hấn gì, ứng dụng bạn chạy ngon lành Middleware PHP thuộc lớp ngôn ngữ lập trình gọi middleware Các ngôn ngữ hoạt động cận kề với Web Server để thông dịch yêu cầu từ World Wide Web, sau nhận trả lời từ Web Server chuyển tải đến trình duyệt Web nhằm đáp ứng yêu cầu Middleware nơi mà bạn thực khối lượng lớn công việc yếu bạn Với hỗ trợ Web Server bạn cán ñaùng quaù Lap trinh Web dong voi PHP / MySQL Page nhiều khối lượng công việc Nhưng bạn phát triển ứng dụng bạn, bạn tốn nhiều thời gian viết mã chương trình chương trình bạn hoạt động Ngoài PHP có số ngôn ngữ khác có chức tương đương 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ữ truy xuất lượng thông tin lớn phức tạp Nó đời lâu Thực tế, có trước Web, Linux WindowsNT, ngạc nhiên có nhiều hệ CSDL để chọn lựa Tất CSDL đề dựa sở SQL (Structure Query Language) Một số hệ phổ biến Oracle, Sysbase, Informix, Ms SQL Server, IBM's DB2 Hệ nguồn mở thông dụng MySQL mà sách đề cập đến, có hai hệ nguồn mở khác PostgresSQL thời thay MySQL Interbase nguồn mở Borland giới thiệu vào tháng 8/1999 Tại sử dụng PHP MySQL Tại có nhiều chọn lựa mà lại phải lấy cặp trùng PHP/MySQL mà thôi? Tôi giải thích điều naỳ phần sau Nói PHP Các ngôn ngữ lập trình xem giống loại giày dép Có loại bắt mắt với số người này, lại khó ưa với người khác ngược lại Một số người thích sử dụng hiệu giày quen thuộc ngôn ngữ lập trình tương tự Ở muốn ngụ ý với bạn lập trình Web, ngôn ngữ lập trình cho kết gần giống Câu hỏi ngôn ngữ tốt vấn đề khả thực số chức mà thường có làm cho bạn thực công việc cách nhanh chóng đỡ nhọc công hay không? Tốc độ nhanh, dễ sử dụng Chúng ta bàn tốc độ Có thứ mà chắn bàn việc so sánh tốc độ ngôn ngữ lập trình Web Thứ nhất, ứng dụng viết C chạy nhanh Thứ hai, công việc lập trình C phức tạp, ngốn nhiều thời gian Thứ ba, việc so sánh ngôn ngữ điều khó khăn Tất biết cảm thấy yên tâm nói PHP nhanh Lap trinh Web dong voi PHP / MySQL Page ngôn ngữ khác Trở lại ví dụ so sánh với 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 chọn loại tiện dụng nhất? Nếu bạn giống tôi, bạn cảm thấy PHP có đầy đủ đặc tính khả năng, cấu trúc dễ sử dụng Xin nói thêm, cách nhìn riêng tôi tin cú pháp PHP tuyệt ASP hay JSP Và theo việc gõ lệnh PHP nhanh ColdFusion không khó học Perl Tóm lại, cho PHP cung cấp tính mạnh mẽ để thực ứng dụng Web cách nhanh chóng Chạy nhiều hệ điều hành Như trình bày phần kiến trúc web, có nói PHP chạy WindowsNT/2000/2003 Unix với hỗ trợ IIS Apache Nhưng chạy số platform khác Netscape, Roxen, hay vài thứ khác Như biết ASP chạy Unix, ColdFusion chạy Solaris Linux, JSP chạy nhiều loại platform Đối với PHP, chạy tốt platform hỗ trợ chủng loại Truy cập loại CSDL Ứng dụng bạn dự định truy cập loại 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ứ PHP sẵn sàng hỗ trợ thông qua hàm xây dựng sẵn làm công việc bạn trở nên dễ dàng tiện lợi Nhưng có số thứ chưa xây dựng sẵn sao? Ta tiếp tục sang phần sau rõ Luôn cải tiến & cập nhật Nếu bạn cảm thấy bỡ ngỡ việc phát triển nguồn mở, bạn có lẽ ngạc nhiên chất lượng loại phần mềm Có hàng ngàn chuyên gia lập trình xuất sắc đợi sẵn họ sẵn sàng bỏ thời gian để tạo phần mềm tuyệt vời miễn phí Đối với ngôn ngữ thịnh hành PHP nhiều nhà lập trình thực phát triển ngày Sự thật có việc ấn tượng bạn có cố kỹ thuật, bạn gởi email đến nhà phát triển PHP chi tiết cố Chỉ vòng vài bạn nhận trả lời thoả đáng Khi PHP4 phổ biến, trở thành tượng ngôn ngữ lập trình Nó giúp cho việc bổ sung số lượng lớn hàm chức cách dễ dàng Nếu ngôn ngữ có sẵn nhiều hàm đặc thù cho công việc bạn đỡ tốn công cho việc lập trình Được hướng dẫn kỹ thuật lúc Lap trinh Web dong voi PHP / MySQL Page Hầu hết ngôn ngữ hỗ trợ active mailing list (hiểu nôm na danh sách mail thành viên trực chiến hỗ trợ kỹ thuật) development site (trang web hỗ trợ giải kỹ thuật) PHP không ngoại lệ Nếu bạn gặp phải cố - gặp lỗi chương trình không tìm cách khắc phục có hàng trăm người có tên danh sách mail sẵn lòng kiểm tra khắc phục cố cho bạn Bộ nguồn mở PHP thật tạo tình cảm cộng đồng Khi bạn gặp phải khó khăn lúc có đồng môn chia sẻ nỗi lòng 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 vấn đề quyền bạn sắm máy vi tính cài lên phần mềm Linux, Apache, PHP tất miễn phí Free! Nói MySQL Mặc dù MySQL phổ biến nhiều có đối thủ đáng gờm cạnh tranh với Những đối thủ trội phương diện đặc thù Trong phần trên, bàn sơ qua MySQL Trong phần này, bạn biết đặc điểm Hệ quản trị CSDL khác mà MySQL không hỗ trợ Với hạn chế làm cho MySQL không chọn để chạy số môi trường Nếu bạn có kế hoạch bắt đầu cho ngân hàng chẳng hạn, khuyên bạn MySQL không thích hợp cho bạn Nhưng phần đông người phần lớn ứng dụng, MySQL chọn lựa họ thích hợp cho ứ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 khoảng 30.000 đến 100.000 USD chí Điều hiển nhiên Oracle, Sysbase Informix Hệ Quản trị CSDL tuyệt vời, giá thành cao, không hợp với túi tiền phần đông người Lap trinh Web dong voi PHP / MySQL Page MySQL hoàn toàn miễn phí Bạn sử dụng mà không cần chuẩn bị khoản tiền Nhanh mạnh MySQL đầy đủ sở vật chất cho Hệ Quản trị CSDL tông, công việc thường nhật phần đông người cung cấp nhiều thứ Nếu công việc bạn lưu trữ liệu Web làm trang Thương mại Điện tử cỡ vừa, MySQL có đủ thứ bạn cần Đối với CSDL cỡ trung bình MySQL hỗ trợ tuyệt vời tốc độ Các nhà phát triển MySQL tự hào tốc độ sản phẩm họ Với ứng dụng mà giới thiệu phần III IV sách này, bạn khó kiếm Hệ Quản trị CSDL đạt tốc độ nhanh Cải tiến liên tục MySQL cải thiện liên tục với tần số không ngờ Các nhà phát triển cập nhật thường xuyên, bổ sung tính ấn tượng cho lúc nơi Hiện tại, MySQL bổ sung thêm hỗ trợ transaction Như MySQL thực thụ trở thành Hệ Quản trị CSDL chuyên nghiệp Good! Thực hành ứng dụng Phần mở đầu tạm đủ Bây tiếp tục sang phần viết ứng dụng thử nghiệm để biết cách thức hoạt động ngôn ngữ Có lẽ đọc qua phần giới thiệu bạn có số khái niệm định hoạt động chúng Công cụ cần thiết Có số thành phần cần thiết mà bạn phải có trước hết Tôi giới thiệu sau bạn biết cần đến PHP Webserver Đây ứng dụng chạy Web, bạn điều hiển nhiên bạn cần phải có Web Server Bạn sử dụng Apache, bạn cài lên Winserver2000/ 2003 Lap trinh Web dong voi PHP / MySQL Page 98, XP thông dụng bạn Có số phiên 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 Tin học Sau cài đặt xong bạn khởi động Apache Nếu từ trình duyệt gõ vào http://localhost trang web thông tin Apache hiển thị coi thành công Lưu ý: Bạn cần phải xác định thư mục gốc localhost để chứa file php bạn sau (xem hướng dẫn cài đặt Apache) Text Editor Để soạn thảo dòng lệnh PHP bạn cần có chương trình soạn thảo text đơn giản thôi, Notepad Windows chẳng hạn Có số chương trình soạn thảo hỗ trợ PHP, dòng lệnh ngời sáng nhiều màu khác nhằm làm cho việc lập trình bạn dễ dàng Bạn vào website Allairre (www.allaire.com) Editplus (www.editplus.com) Hiện nay, chương trình Dreamweaver MX Macromedia hỗ trợ soạn thảo mã lệnh PHP tốt BẮT ĐẦU LÀM Tôi nghó khởi đầu sách với mớ lý thuyết suông Bây bắt tay vào thực Như bạn biết truy cập vào trang Web bạn yêu cầu hay bạn muốn ghi lại ý kiến với mớ thông tin nhận dạng họ tên, địa website, email v.v Tất thông tin lưu trữ vào CSDL Web Nhờ vậy, người quản trị Web người truy cập khác biết thông tin cá nhân ý kiến bạn Người ta gọi thông tin GuestBook (hiểu nôm na Sổ vàng để khách viếng thăm ghi chép) Bây bắt tay vào việc tạo GuestBook Tạo Database (quan trọng!) Bây bạn cần biết phải làm Chuyện phải tạo CSDL lưu trữ thông tin khách Để làm điều bạn cần phải dùng đến ngôn ngữ SQL (thực tế bạn làm với vài động tác nhắp chuột vài ngón gõ phím, tập làm quen với SQL hữu dụng sau) Bạn học kỹ SQL chương sau Do bạn đừng lo lắng chưa hiểu Bây bạn khởi động MySQL Nếu bạn cài đặt MySQL Windows có biểu tượng để khởi động tự động khởi động mở Lap trinh Web dong voi PHP / MySQL Page 10 trình dễ sử dụng Nếu bạn cảm thấy khó xem phần Phụ Lục sách, có hướng dẫn chi tiết ñoù phpMyAdmin Lap trinh Web dong voi PHP / MySQL Page 33 Tóm tắt Trong chương bạn tìm hiểu tất lệnh cần thiết để tạo thao tác với CSDL môi trường MySQL Bạn biết mục đích index Biết kiểu liệu mục đích sử dụng theo tuỳ trường hợp Ngoài giới thiệu chương trình quản lý CSDL có giao diện đồ hoạ phpMyAdmin giúp bạn thao tác thủ công CSDL cách dễ dàng Trong phần III IV bạn tìm hiểu kỹ thực ứng dụng quan trọng CSDL chương trình (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 Lap trinh Web dong voi PHP / MySQL Page 34 LAÄP TRÌNH W EB ĐỘNG VỚI PHP / MySQL GUESTBOOK CATALOG FORUM SHOPPING CART PHẦN Tống Phước Khải (tổng hợp & biên dịch) BIẾN (variables) phép xử lý biến PHP 1- Biến cách sử dụng Biến 2- Xử lý liệu từ FORM 3- Tìm hiểu sâu Biến Bạn đọc thân mến, Vừa qua soạn xong phần phần giáo trình tự học PHP/MySQL Tôi nhận email bạn quan tâm, chờ đợi phần giáo trình Đáng lẽ phần cho đời sớm bận rộn nhiều công việc (hiện phụ trách có nhiều công việc nhóm Hanosoft - software Hán Nôm) nên việc biên soạn sách tự học nhiều bị trì hoãn Do hoàn cảnh trên, chắn công việc biên soạn không tránh sai sót Nhưng dù nữa, biết bạn áp dụng giáo trình vào thực tế phần lấy làm khích lệ cho riêng Đúng lý phần dành trọn cho việc nói ngôn ngữ SQL phần bàn CSDL rồi, phần bàn nhàm phải không bạn? Với ý nghó dành trọn phần để nói biến PHP Hẳn nhiên biết số bạn mong mỏi áp dụng liền đỡ chán Nhưng theo nghó trước tiên hết bạn cần phải nắm rõ ngóc ngách PHP MySQL thiết kế chương trình đạt tiêu chuẩn Do mong bạn kiên nhẫn đọc chương hướng dẫn suông này! Đừng nản lòng nên ghi nhớ cội rễ cho ứng dụng thực tế bạn Để bắt đầu chương bạn phải có chút đỉnh kiến thức Cơ Sở Lập Trình Tôi nghó bạn học qua khoá lập trình bạn hiểu Nếu không, đòi hỏi bạn cần phải động não tìm tòi nhiều Nào, bắt đầu thôi! PHP xử lý biến linh động Nó nhận biết kiểu biến làm cho cú pháp Lap trinh Web dong voi PHP / MySQL Page 35 câu lệnh đơn giản Ai lập trình với C, Java Perl cảm thấy dễ dàng sử dụng PHP Tuy nhiên việc dễ dãi gây số trở ngại định Tất biến khai báo PHP bắt đầu với dấu đô la ($) Dù cho biến bạn kiểu chuỗi, nguyên hay thập phân chí mảng chúng khác biệt PHP theo dõi liệu chứa biến thay đổi Nói chung, làm việc với PHP bạn quan tâm đến vị trí khác biến là: (1) khai báo mã lệnh PHP, (2) chuyển tiếp từ trang HTML (3) biến sẵn có hệ thống PHP Chúng ta tìm hiểu loại phần Nên lưu ý biến chuyển tiếp từ nơi khác từ URL từ SESSION Gán biến Script Bạn không cần phải khai báo EXPLICIT cho biến số ngôn ngữ khác Chỉ cần khai báo tên biến sẵn sàng làm việc Bạn xét ví dụ sau để hiểu cách khai báo biến PHP uyển chuyển nào: $a = "Toi thich hoc PHP"; //day la bien chuoi $b = 4; //day la bien so $c = 4.837; //day la bien so thuc $d = "2"; //day cung la bien chuoi Để ý dấu = dấu dùng để gán Còn thực phép so sánh bạn dùng hai dấu (= = ) Ví dụ: IF ($x= =1) PHP thông minh việc biến đổi kiểu Ví dụ, bạn thực phép cộng số nguyên với chuỗi chứa ký tự số (trong ví dụ laø $b vaø $d) $a = "Toi thich hoc PHP"; //day la bien chuoi $b = 4; //day la bien so $c = 4.837; //day la bien so thuc $d = "2"; //day cung la bien chuoi $e = $b + $d; echo $e; PHP nhận bạn muốn xem chuỗi $d (chuỗi "2") số nguyên Thế hoán chuyển sang trị nguyên thực phép toán cộng cho kết $e = Ngoài ra, PHP hiểu chuỗi vừa số vừa chữ ví dụ sau: $a = 2; $b = "2 heo con"; $c = $a + $b; Kết cho $c = Nếu số nguyên hay thập phân đứng vị trí đầu chuỗi PHP hiểu ví dụ Tương tự, PHP thực tương tự kiểu số khác nhau: $f = 2; //$f la mot so nguyen $g = 1.444; // $g la mot so thuc $f = $f + $g; //$f tu bien doi so thuc Việc xử lý thật hay, dẫn đến số rắc rối có lúc bạn thời điểm bạn làm việc với kiểu biến kiểu Tôi trình bày phần Kiểm Tra Biến Qui định chuỗi Trong ví dụ trên, bạn thấy tất chuỗi bao dấu nháy đôi Có hai cách khác để bạn thể cho PHP hiểu chuỗi Trong chuỗi mà bạn bao lại cặp nháy đôi " ", xong bạn chèn biến vào giữa, PHP hiểu biến Ví dụ: $my_name = "Jay"; Lap trinh Web dong voi PHP / MySQL Page 36 $phrase = "Hello, my name is, $my_name"; echo $phrase; Kết cho là: Hello, my name is, Jay Thật khác thường phải không bạn?! (Đáng lẽ dấu nháy " thứ hai phải sau chữ is đặt dấu cộng chuỗi với biến $my_name) Trong trường hợp sau đây, muốn xuất chuỗi: Tôi đăng ký hosting hết $20 phải làm sao? Bởi chuỗi có chứa $, điều làm cho PHP hiểu biến Chúng ta xem cách giải sau: Nếu chuỗi bạn muốn có chứa ký tự đặc biệt như: dấu nháy đôi "", dấu slash \, dấu đô la $ , bạn phải sử dụng đến ký tự chuyển (gọi dấu escape) dấu slash (\) Tôi quen đọc dấu / "dấu suyệt trái" \ "dấu suyệt phải" Giả sử, để xuất hình dòng chữ: , bạn thấy chứa tới dấu nháy đôi - thuộc dạng ký tự đặc biệt Ta phải sử dụng tới dấu suyệt phải sau: echo ""; Thì đến chạy chương trình mong cho kết mong muốn Tác dụng dấu nháy đơn PHP: Bạn thấy dấu nháy đơn PHP có tác dụng dấu nháy đôi nào! Nếu chuỗi bạn có chứa biến (bắt đầu $), bạn bao lại dấu nháy đơn biến bị biến thành chuỗi luôn, không hiểu biến cách bao dấu nháy đôi: $my_name = "Jay"; echo ‘Hello, my name is, $my_name’; Kết cho Hello, my name is, $my_name Hello, my name is Jay Cuối cùng, PHP4 bạn sử dụng dấu Here Documents Đây loại ký hiệu tương tợ hai loại nháy đơn nháy đôi Trong số trường hợp sử dụng bạn cảm thấy tiện lợi Here Docs xác định giới hạn đầu chuỗi với dấu nhỏ