Giáo trình phát triển ứng dụng web

225 3 0
Giáo trình phát triển ứng dụng web

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP QUẢNG NINH TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP QUẢNG NINH KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN MẠNG & CÔNG NGHỆ PHẦN MỀM GIÁO TRÌNH PHÁT TRIỂN ỨNG DỤNG WEB DÙNG CHO TRÌNH ĐỘ ĐẠI HỌC BÀI GIẢNG PHÁT TRIỂN ỨNG DỤNG WEB QUẢNG NINH - 2019 MỤC LỤC CHƯƠNG 1: MỞ ĐẦU 1.1 Giới thiệu 1.2 Website động gì? 1.3 PHP gì? 1.4 Tại cần dùng PHP? 1.5 Cách làm việc PHP 1.6 MySQL gì? 1.7 Bạn cần để xây dựng Website viết PHP & MySQL 10 1.8 Ứng dụng máy chủ Web Server WAMP làm môi trường để xây dựng Website viết PHP & MySQL 10 1.8.1 WAMP gì? 10 1.8.2 Các đặc điểm trội WAMP 11 1.8.3 Download cài đặt WAMP 11 1.8.4 Các bước cài đặt WAMP 11 1.8.5 Hoàn tất việc cài đặt chạy thử 15 Câu hỏi ôn tập chương 18 CHƯƠNG 2: NGƠN NGỮ LẬP TRÌNH PHP 19 2.1 Nhúng PHP vào trang HTML 19 2.1.1 Nhúng mã PHP HTML 19 2.1.2 Ghi PHP 21 2.2 Khái niệm cú pháp PHP 21 2.3 Biến gì? 21 2.3.1 Khái niệm cú pháp khai báo 22 2.3.2 Tầm hoạt động biến 23 2.3.3 Các biến định nghĩa trước 24 2.3.4 Chuyển đổi kiểu liệu biến 24 2.4 Các kiểu liệu PHP 25 2.4.1 Kiểu boolean 25 2.4.2 Kiểu integer 26 2.4.3 Kiểu số thực (floats, doubles hay real numbers) 26 2.4.4 Kiểu string 27 2.4.5 Kiểu mảng 31 2.4.6 Kiểu object 33 2.4.7 Kiểu resource 34 2.4.8 Kiểu NULL 34 2.5 Hằng PHP 34 2.6 Toán tử PHP 35 2.6.1 Phép gán (assignment) 35 2.6.2 Các phép toán số học 36 2.6.3 Các phép toán chuỗi 36 2.6.4 Phép toán gán kết hợp 37 2.6.5 Tham chiếu 37 2.6.6 Phép toán so sánh 38 2.7 Kiểu Date-Time 39 2.8 Cấu trúc điều khiển PHP 41 2.8.1 Cấu trúc if…elseif…else 41 2.8.2 Cấu trúc switch 43 2.8.3 Vòng lặp for 45 2.8.4 Vòng lặp while 46 2.8.5 Vòng lặp do…while 47 2.8.6 Thoát khỏi cấu trúc điều khiển 48 2.9 Hàm 49 2.10 Tương tác với Server Form 53 2.10.1 Tạo Form 53 2.10.2 Lấy liệu từ form click nút submit với phương thức post 54 2.10.3 Lấy liệu từ form click nút submit với phương thức get 57 2.11 Đối tượng session cookie 61 2.11.1 Đối tượng session 61 2.11.2 Đối tượng cookie 68 2.12 Tận dụng mã nguồn có sẵn cách include file 69 2.13 Một số ví dụ minh họa 70 Câu hỏi ôn tập chương 79 CHƯƠNG 3: CƠ SỞ DỮ LIỆU MySQL 84 3.1 Giới thiệu sở liệu MySQL 84 3.2 Kiểu liệu MySQL 84 3.2.1 Kiểu liệu Numeric 84 3.2.2 Kiểu liệu Date and Time 84 3.2.3 Kiểu liệu String 85 3.3 Các phát biểu SQL 86 3.4 Sử dụng phpMyAdmin để quản trị MySQL 86 3.4.1 Tổng quan phpMyAdmin 86 3.4.2 Cài đặt phpMyAdmin 87 3.4.3 Khởi động phpMyAdmin 87 3.4.4 Phân quyền nhóm người sử dụng 88 3.4.5 Làm việc với Cơ sở liệu 88 3.4.6 Làm việc với bảng (Table) 92 Câu hỏi ôn tập chương 94 CHƯƠNG 4: KẾT HỢP PHP VÀ MySQL 96 4.1 Kết nối sở liệu 96 4.2 Truy vấn hiển thị liệu bảng 96 4.2.1 Hiển thị dạng lưới (table) 96 4.2.2 Hiển thị dạng lưới định dạng 99 4.2.3 Hiển thị dạng lưới có phân trang 102 4.2.4 Hiển thị dạng list đơn giản 107 4.2.5 Hiển thị list dạng cột 109 4.2.6 Hiển thị list dạng cột có link 111 4.2.7 Hiển thị list chi tiết có phân trang 115 4.3 Tìm kiếm liệu 120 4.3.1 Tìm kiếm đơn giản 120 4.3.2 Tìm kiếm nâng cao 123 4.4 Thêm liệu 127 4.5 Cập nhật xóa liệu 132 4.6 Một số ví dụ minh họa 141 Câu hỏi ôn tập chương 178 CHƯƠNG 5: HỆ QUẢN TRỊ NỘI DUNG MÃ NGUỒN MỞ JOOMLA 179 5.1 Tổng quan hệ quản trị nội dung mã nguồn mở (CMS) 179 5.2 Giới thiệu Joomla 179 5.2.1 Khái niệm Joomla 179 5.2.2 Vài nét lịch sử phát triển Joomla 179 5.2.3 Các dòng phiên Joomla 180 5.2.4 Kiến trúc Joomla 180 5.2.5 Đối với người sử dụng cuối 180 5.2.6 Ứng dụng Joomla 180 5.3 Một số khái niệm Joomla 181 5.3.1 Front-end Back-end 181 5.3.2 Các thành phần mở rộng (Extension) 181 5.3.3 Quản lý nội dung Site 183 5.3.4 Template 184 5.4 Cài đặt Joomla 185 5.4.1 Các bước cài đặt 185 5.4.2 Mở ứng dụng Website trình duyệt 190 5.4.3 Đăng nhập vào trang quản trị ứng dụng Website 191 5.5 Quản trị Joomla 192 5.5.1 Cấu hình tổng thể (Global Configuration) 192 5.5.2 Quản lý người dùng 196 5.5.3 Việt hóa Joomla cách cài đặt gói ngơn ngữ tiếng Việt 197 5.5.4 Thay đổi Template cho Website 201 5.5.5 Tạo nội dung cho Website (Section, Category, Content Item) 204 5.5.6 Cài đặt Component, Module, Plugin 210 5.5.7 Một số thao tác với Main Menu 211 5.6 Bảo mật Joomla 217 5.6.1 Khái niệm bảo mật 217 5.6.2 Tại phải bảo mật? 218 5.6.3 Các phương pháp bảo mật 218 Câu hỏi ôn tập chương 220 PHỤ LỤC 221 TÀI LIỆU THAM KHẢO 222 LỜI NĨI ĐẦU Ngày nay, ứng dụng cơng nghệ thơng tin việc tin học hóa xem yếu tố mang tính định hoạt động phủ, tổ chức, cơng ty; đóng vai trị quan trọng, tạo bước đột phá mạnh mẽ Đối với phủ cơng ty việc xây dựng Website riêng ngày trở nên cấp thiết Thông qua Website này, thông tin họ công văn, thông báo, định phủ hay sản phẩm, dịch vụ công ty đến với người quan tâm, đến với khách hàng họ cách nhanh chóng kịp thời, tránh phiền hà mà phương thức giao tiếp truyền thống thường gặp phải Việc xây dựng trang Web để phục vụ cho nhu cầu riêng tổ chức, công ty chí cá nhân, ngày nay, khơng lấy làm xa lạ Với vài thao tác đơn giản, người trở thành chủ Website giới thiệu quan tâm: Website giới thiệu thân gia đình anh ta, Website trình bày sưu tập hình ảnh loại xe mà thích chẳng hạn Ngày nay, Website tĩnh với trang HTML đơn giản khơng cịn đáp ứng nhu cầu người dùng Các Website động kết hợp với sở liệu trở thành xu phát triển Web Nếu nội dung trang Web bạn ngày nhiều, bạn cần phải tạo Web động, bạn thử hình dung bạn có cửa hàng điện tử Web có 1.000 sản phẩm Bạn phải tạo 1.000 trang Web cho sản phẩm thứ thay đổi, bạn phải sửa đổi lại tất trang Đó việc khơng hứng thú tốn thời gian, bạn phải cần Web động, bạn việc tạo trang hiển thị, nội dung sản phẩm lưu trữ sở liệu, thông tin hiển thị tuỳ thuộc vào truy cập người truy cập Môn học Xây dựng ứng dụng Web với PHP & MySQL giới thiệu với bạn công nghệ phổ biến dùng để tạo Website động: Ngôn ngữ kịch PHP chương trình quản lý sở liệu MySQL Môn học giới thiệu Hệ quản trị nội dung mã nguồn mở Joomla giúp xây dựng Website nhanh chóng, dù web cá nhân Website ngân hàng, đại công ty, hệ thống bán hàng trực tuyến, hệ thống viễn thông, trường học online, Giáo trình “Xây dựng ứng dụng Web với PHP & MySQL” biên soạn nhằm phục vụ công tác đào tạo học tập trường Đại học Công nghiệp Quảng Ninh, tư liệu tham khảo tốt cho tất quan tâm đến Lập trình Web, đặc biệt sinh viên ngành Tốn-Tin, Tin học, Cơng nghệ Thơng tin Giáo trình bao gồm chương: Chương 1: Cung cấp khái niệm mở đầu lập trình Web Chương 2: Cung cấp kiến thức ngơn ngữ lập trình PHP Chương 3: Các kiến thức sở liệu MySQL Chương 4: Trình bày cách khai thác thơng tin: Hiển thị, thêm, xóa, cập nhật thơng tin sở liệu sử dụng PHP & MySQL Chương 5: Cung cấp kiến thức CMS Joomla để xây dựng ứng dụng Website Phụ lục danh sách từ viết tắt sử dụng giáo trình liên quan Sau chương có câu hỏi ôn tập nhằm giúp sinh viên nắm vững nội dung chương tự kiểm tra trình độ qua việc trả lời câu hỏi ơn tập chương Do trình độ thời gian có hạn, nên giáo trình khơng thể tránh khỏi khiếm khuyết Rất mong nhận ý kiến đóng góp q báu bạn đọc Nhân tơi xin trân trọng gửi lời cảm ơn tới Thầy, Cô giáo trường Đại học Công nghiệp Quảng Ninh nhiệt tình giúp đỡ tơi dành nhiều thời gian đọc kĩ có ý kiến sâu sắc thời gian xây dựng giáo trình Quảng Ninh, tháng 02 năm 2013 TÁC GIẢ CHƯƠNG 1: MỞ ĐẦU 1.1 Giới thiệu Một công việc chuyên gia thiết kế Web phải biết về: - Web Programming Language (ngôn ngữ lập trình Web) - Web Server (Máy phục vụ Web) - Database Server (máy phục vụ sở liệu) * Web Programming Language gì? Web Programming Language (ngơn ngữ lập trình Web): Ngơn ngữ viết theo phong cách lập trình (khác so với HTML-ngơn ngữ đánh dấu) để hỗ trợ tăng cường khả Web Cho phép điều khiển phần tử trang Web dễ dàng Chúng ta có số ngơn ngữ lập trình Web là: ASP, ASP.NET, PHP, JSP,… * Web Server gì? Web Server (Máy phục vụ Web): máy tính mà cài đặt phần mềm phục vụ Web, đơi người ta gọi phần mềm Web Server Tất Web Server hiểu chạy file: *.htm *.html, nhiên Web Server lại phục vụ số kiểu file chuyên biệt chẳng hạn IIS Microsoft dành cho *.asp, *.aspx, ; Apache dành cho *.php,… ; Sun Java System Web Server SUN dành cho *.jsp,… * Database gì? Database Server (máy phục vụ sở liệu): máy tính mà có cài đặt phần mềm Hệ quản trị sở liệu Chúng ta có số Hệ quản trị sở liệu như: SQL Server, MySQL, Oracle,… 1.2 Website động gì? Các Website động thực thể mạnh linh hoạt, thường thể dạng ứng dụng Website đơn Các ưu điểm Website động: - Đáp ứng nhiều tham số khác (ví dụ thời gian ngày phiên trình duyệt người dùng) - Thường có giao diện cho phép người quản trị quản lý nội dung site - Có “bộ nhớ”, cho phép người dùng đăng ký đăng nhập, thực thương mại điện tử trình tương tự - Dễ dàng trì, cập nhật phát triển Có nhiều cơng nghệ để tạo Website động Các công nghệ thường sử dụng ASP (Active Server Pages, sản phẩm Microsoft), JSP (Java Server Pages), ColdFusion PHP Website động không thiết phải phụ thuộc vào sở liệu, ngày phụ thuộc nhiều, đặc biệt ứng dụng sở liệu có sẵn MySQL… với chi phí thấp miễn phí 1.3 PHP gì? PHP chữ viết tắt “Personal Home Page” Rasmus Lerdorf tạo năm 1994, để theo dõi người dùng truy cập lý lịch trực tuyến ơng Vì tính hữu dụng, khả phát triển, PHP bắt đầu sử dụng môi trường chuyên nghiệp trở thành “PHP: Hypertext Preprocessor” Theo Website thức PHP địa www.php.net PHP “một ngơn ngữ kịch nhúng HTML” “PHP nhúng HTML” có nghĩa PHP đặt rải rác HTML, giúp cho việc phát triển Website động dễ dàng PHP ngôn ngữ kịch (scripting language) Khác với ngôn ngữ lập trình, PHP thiết kế để thực điều sau kiện xảy (ví dụ, người dùng gửi biểu mẫu chuyển tới URL) PHP công nghệ phía máy chủ (server-side) khơng phụ thuộc mơi trường (cross-platform) Cả hai yếu tố quan trọng Khái niệm cơng nghệ phía máy chủ nói đến việc thứ PHP xảy máy chủ (ngược với máy khách máy người dùng) Tính chất không phụ thuộc môi trường cho phép PHP chạy hầu hết hệ điều hành Windows, Unix (và nhiều biến thể nó), Macintosh,… Một điều quan trọng mã kịch PHP viết máy chủ làm việc bình thường máy chủ khác mà không cần chỉnh sửa chỉnh sửa 1.4 Tại cần dùng PHP? PHP sử dụng để phát triển Website động tốt, nhanh dễ dàng nghiên cứu giải pháp khác PHP có khả thực tích hợp chặt chẽ với hầu hết sở liệu có sẵn, tính bền vững, linh động khả phát triển không giới hạn Tất đặc tính miễn phí PHP mã nguồn mở PHP vừa dễ với người sử dụng vừa có khả làm thứ, đáp ứng yêu cầu lập trình viên chuyên nghiệp PHP sử dụng ngày nhiều bắt kịp ASP (vốn xem ngôn ngữ kịch phổ biến nay) PHP môđun thông dụng cho Apache (máy chủ Web phổ biến nhất) có mặt 12 triệu Website 1.5 Cách làm việc PHP Hình 1.1: Cách làm việc PHP phù hợp với môi trường khác-chủ người dùng yêu cầu trang Web Như giới thiệu, PHP ngôn ngữ máy chủ, mã lệnh PHP tập trung máy chủ để phục vụ trang Web theo yêu cầu người dùng thông qua trình duyệt Khi người dùng truy cập Website viết PHP, máy chủ đọc mã lệnh PHP xử lý chúng theo hướng dẫn mã hóa Trong ví dụ hình 1.1, mã lệnh PHP yêu cầu máy chủ gửi liệu thích hợp (mã lệnh HTML) đến trình duyệt Web Trình duyệt xem trang HTML tiêu chuẩn Hình 1.2: Quá trình xử lý yêu cầu trang HTML tĩnh Điều khác với site HTML tĩnh chỗ: Khi có yêu cầu, máy chủ đơn gửi liệu HTML đến trình duyệt Web khơng xảy biên dịch từ phía máy chủ (xem hình 1.2) Đối với người dùng cuối trình duyệt Web, trang home.htm home.php trông tương tự nhau, thực chất nội dung trang tạo theo cách khác 1.6 MySQL gì? MySQL (www.mysql.com) sở liệu phổ biến giới, số người cho sở liệu mã nguồn mở tốt Thật vậy, từ phiên bổ sung thêm vài đặc điểm MySQL trở thành đối thủ người khổng lồ đắt Oracle SQL Server Microsoft, giống PHP, MySQL có khả thực thi hồn hảo, linh động, đáng tin cậy, dễ nắm bắt chi phí miễn phí MySQL phát triển hỗ trợ công ty MySQL AB Thụy Điển Nó hệ thống quản trị sở liệu (DBMS) cho sở liệu quan hệ (vì vậy, MySQL RDBMS) Cơ sở liệu tập hợp liệu có liên quan với nhau, văn bản, số tập tin nhị phân lưu trữ có tổ chức DBMS Có nhiều loại sở liệu, từ tập tin đơn giản đến tập tin quan hệ hướng đối tượng Một sở liệu quan hệ sử dụng nhiều bảng để lưu trữ thông tin phần riêng biệt Trước 1970, sở liệu trơng giống bảng tính lớn, đơn giản lưu trữ thứ Các sở liệu quan hệ đòi hỏi phải tập trung suy nghĩ nhiều giai đoạn thiết kế lập trình, chúng có độ tin cậy tính tồn vẹn liệu tốt Ngoài ra, sở liệu quan hệ thực việc tìm kiếm cho phép nhiều người sử dụng lúc Với việc kết hợp sở liệu vào ứng dụng Web, nhiều liệu PHP sinh lấy từ MySQL Điều chuyển nội dung site từ trạng thái tĩnh (mã hóa cứng) sang trạng thái động độ linh hoạt chìa khóa cho website động Hình 1.3: Cách hoạt động phần lớn ứng dụng Web động sử dụng PHP MySQL MySQL ứng dụng mã nguồn mở giống PHP giống vài biến thể Unix… Nó dùng miễn phí sửa đổi (có thể tải mã nguồn) Tuy nhiên, có trường hợp phải trả phí quyền MySQL, đặc biệt bạn kiếm tiềm từ việc buôn bán kết hợp với sản phẩm MySQL Phần mềm MySQL có nhiều phần, có máy chủ MySQL (mysql để chạy quản lý sở liệu), máy khác MySQL (mysql cung cấp giao diện với máy chủ), tiện ích để trì dùng cho mục đích khác PHP ln ln hỗ trợ tốt cho MySQL điều cho phiên gần MySQL xử lý sở liệu lớn gần 60.000 bảng với tỷ mẩu tin, làm việc với bảng lớn đến triệu terabytes (từ phiên 3.23) số hệ điều hành Nói chung, thường làm việc với bảng có kích thước 4GB 1.7 Bạn cần để xây dựng Website viết PHP & MySQL Để xây dựng Website viết PHP & MySQL, bạn cần công cụ sau: - Một ứng dụng máy chủ Web (ví dụ: Apache, Xitami IIS) - PHP Script Language - MySQL Database - Chương trình quản lý giao diện đồ họa sở liệu MySQL là: phpMyAdmin - Trình duyệt Web (như Internet Explorer Microsoft, Navigator Netscape, Safari Apple, Mozilla, Opera,…) - Trình soạn thảo văn bản, ứng dụng WYSIWYG có hỗ trợ PHP (Dreamweaver Macromedia) IDE (Integrated Development Enviroment: mơi trường phát triển tích hợp) - Ứng dụng FTP dùng máy chủ xa Điều hấp dẫn việc phát triển Website động dùng PHP MySQL tất yêu cầu đáp ứng mà khơng tốn tiền, hệ điều hành sử dụng Apache, PHP MySQL mã nguồn mở, số trình duyệt Web ứng dụng thương mại nhiều trình soạn thảo văn tốt, có sẵn, miễn phí 1.8 Ứng dụng máy chủ Web Server WAMP làm môi trường để xây dựng Website viết PHP & MySQL 1.8.1 WAMP gì? Một khó khăn ban đầu người thiết kế Web cài đặt Web Server Đa phần cảm thấy chật vật việc cài đặt Apache (Web Server) + MySQL (Database Server) + PHP cấu hình cho chúng làm việc tốt với Tuy nhiên có giải pháp đơn giản tiện lợi, sử dụng gói cài đặt tích hợp gồm Apache + MySQL + PHP + PHPMyAdmin (một công cụ quản trị CSDL MySQL) Mọi việc cần làm download cài đặt tiến hành cài đặt bước theo dẫn Chúng ta có sản phẩm tiếng XAMPP WAMP Tuy nhiên với mục đích cài đặt localhost để chạy thử WAMP lựa chọn dễ dàng WAMP: Một gói phần mềm Web Server tất (All-in-One) gồm: Apache, MySQL, PHP, PHPMyAdmin chạy Windows 10 Chương 5: Hệ quản trị nội dung mã nguồn mở Joomla - Để sử dụng Component, chọn menu Components > Tên_của_component muốn sử dụng b) Cài đặt Module - Mở menu Extensions > Install/Uninstall - Nhấn vào nút [Browser ] để chọn Module (được đóng gói file nén *.zip) - Nhấn vào nút [Upload File & Install] để cài đặt Module - Sau cài đặt Module thành cơng, bạn cần chọn vị trí mà Module xuất Website, thực sau, chọn menu Extensions > Module Manager, chọn Module muốn sử dụng, sau chọn vị trí (Position) mà Module xuất c) Cài đặt Plugin - Mở menu Extensions > Install/Uninstall - Nhấn vào nút [Browser ] để chọn Plugin (được đóng gói file nén *.zip) - Nhấn vào nút [Upload File & Install] để cài đặt Plugin - Sau cài đặt Plugin thành công, bạn cần phải kích hoạt Plugin để hoạt động, thực sau, chọn menu Extensions > Plugin Manager, chọn giá trị Enabled cho Plugin Muốn vơ hiệu hóa Plugin chọn giá trị Disabled 5.5.7 Một số thao tác với Main Menu  Trên trang chủ Website “mysite’, ta thấy có Module menu với mục (Menu Item) có tên “Home” sau: * Để đổi tên “Main Menu” thành tên khác, thực sau: - Chọn Extensions > Module Manager 211 Chương 5: Hệ quản trị nội dung mã nguồn mở Joomla Hình 5.39: Liệt kê Module có Website - Click chọn “Main Menu”, gõ vào tên muốn trường Title * Các thiết lập Menu Item “Home” (hoặc mục khác thêm vào): Hình 5.40: Các thiết lập cho Menu Item “Home” - ID: Đây mã số danh định Menu Item, đánh số tự động - Title: Tên Menu Item, tên xuất Menu trang Web - Alias: Tên dành cho Joomla! quản lý, tự đặt cịn để trống Joomla! tự đặt theo Title khơng có dấu khoảng cách Tên thường dùng chức SEO/SEF - Link: Địa liên kết Menu Item - Display in: Chọn hiển thị Menu - Parent Item: Chọn cấp độ cho Menu Item, Top cao chọn tên Menu Item Menu Item Menu Item phụ (Sub) Menu Item chọn - Published: Trạng thái hiển thị để sử dụng, No không hiển thị Yes hiển thị - Order: Sắp xếp thứ tự vị trí cho Menu Item, thứ tự thay đổi Menu Item Manager - Access Level: Chọn mức độ truy cập, Publish: truy cập Menu Item này, Registered: Những thành viên sau đăng nhập truy cập được, Special: Chỉ có thành viên cấp quyền đặc biệt truy cập - On Click, Open in: Chọn trạng thái mở trình duyệt nhấn vào Menu Item * Để thêm mục cho menu “Main Menu”, thực sau: - Chọn Menus > Menu Manager 212 Chương 5: Hệ quản trị nội dung mã nguồn mở Joomla “Menus” Joomla nhóm liên kết đến Section, category, content item, component hay trang bên Những liên kết gọi “Menu Items” Hình 5.41: Cửa sổ Menu Manager - Click lựa chọn “Edit Menu Item (s)” menu muốn thêm mục Cửa sổ “Menu Item Manger” xuất Hình 5.42: Cửa sổ Menu Item Manager - Click vào biểu tượng “New” để thêm mục cho menu “Main Menu” (Mỗi mục liên kết đến nội dung tồn dạng kiểu Hình 5.43), chọn kiểu liên kết đến: Internal Link > Articles > Front Page > Front Page Blog Layout (Nội dung hiển thị định dạng “Blog” Định dạng Blog hiển thị viết publish chuỗi Item tóm tắt ngắn Site) 213 Chương 5: Hệ quản trị nội dung mã nguồn mở Joomla Hình 5.43: Chọn kiểu Front Page Blog Layout Các kiểu mục menu (Menu Item) hiển thị: + Tạo Menu Item hiển thị nội dung - Article Hình 5.44: Menu Item hiển thị nội dung-Article  Archived Article List: Hiển thị danh sách nội dung-Article có thuộc tính lưu trữ  Article Layout: Hiển thị toàn nội dung viết-Article  Article Submission Layout: Hiển thị khung soạn thảo để tạo viết mớiArticle 214 Chương 5: Hệ quản trị nội dung mã nguồn mở Joomla  Category Blog Layout: Hiển thị nội dung Category dạng tóm tắt-Blog  Category List Layout: Hiển thị nội dung Category dạng liệt kê danh sách  Front Page Blot Layout: Hiển thị nội dung chọn “Hiển thị Front Page”, thường chọn làm “Trang chủ”  Section Blog Layout: Hiển thị nội dung Section dạng tóm tắtBlog  Section Layout: Hiển thị nội dung Section dạng liệt kê danh sách + Tạo Menu Item hiển thị phần liên hệ - Contact Hình 5.45: Menu Item hiển thị phần liên hệ-Contact  Contact Category Layout: Hiển thị tất Contact Contact Category  Standard Contact Layout: Hiển thị phần liên hệ - Contact + Tạo Menu Item hiển thị cấp tin – News Feeds: Hình 5.46: Menu Item hiển thị cấp tin-News Feeds  Category List Layout: Hiển thị Category Component News Feeds  Category Layout: Hiển thị nội dung Category Component News Feeds  Single Feed Layout: Hiển thị nội dung Component News Feeds + Tạo Menu User dành cho thành viên: 215 Chương 5: Hệ quản trị nội dung mã nguồn mở Joomla Hình 5.47: Tạo Menu User dành cho thành viên       Default Login Layout: Hiển thị phần đăng nhập Defautl Registration Layout: Hiển thị phần đăng ký thành viên Default Remind: Hiển thị phần cung cấp lại tên thành viên Default Reset Layout: Hiển thị phần cung cấp lại mật thành viên Default User Layout: Hiển thị phần “Chào mừng” thành viên đăng nhập User Form Layout: Hiển thị phần thay đổi thông số thành viên + Tạo Menu Item liên kết Web-Web Link: Hình 5.48: Tạo Menu Item liên kết Web – Web Link  Web Link Category List Layout: Hiển thị tất Web Link  Category List Layout: Hiển thị Category chứa Web Link  Web Link Submission Layout: Chức cho phép tạo thêm Web Link + Tạo kiểu Menu Item khác: 216 Chương 5: Hệ quản trị nội dung mã nguồn mở Joomla Hình 5.49: Các kiểu Menu Item khác       Polls: Tạo Menu Item cho phần bình chọn – Component Poll Search: Tạo Menu Item cho phần tìm kiếm – Search Wrapper: Hiển thị trang Web khác trang – Wrapper External Link: Liên kết trang đến Web khác bên Separator: Tạo khoảng cách Menu Item Alias: Tạo thêm Menu Item khác giống Menu Item có sẵn -Sau thêm mục có tên “Tin học”, kết hiển thị trình duyệt sau: Chú ý: Khi cài đặt thêm Component cho Joomla tên chúng xuất Menu Item:[New], muốn hiển thị Component phải tạo Menu Item cho chúng 5.6 Bảo mật Joomla 5.6.1 Khái niệm bảo mật Bảo mật vấn đề quan trọng hàng đầu lĩnh vực tình báo, quân sự, ngoại giao, vấn đề nghiên cứu hàng nghìn năm Nếu vấn đề liên quan đến hoạt động tình báo quân xa lạ, với doanh nghiệp việc bảo mật thơng tin thương mại ln vấn đề đặt ra, đặc biệt thời đại nay, mà thông tin giữ vai trò quan trọng hàng đầu phương tiện truyền thông đại cho phép chuyển tin dễ dàng dễ dàng để thông tin Vậy ta làm để sử dụng tiện ích cơng nghệ thơng tin viễn thông mang lại cho giới đồng thời 217 Chương 5: Hệ quản trị nội dung mã nguồn mở Joomla không để đối thủ cạnh tranh loại tội phạm tin học sử dụng cơng nghệ để gây hại Bảo mật cho Website Joomla nhân tố quan trọng góp phần bảo vệ Website trước âm mưu công có chủ đích vơ tình, giúp cho Website hoạt động ổn định bền vững Nhiều quản trị Website đặt trọng tâm vào việc thiết kế, cập nhật nội dung giành thứ hạng cao kết tìm kiếm mà quên việc đảm bảo an toàn cho Website, tới việc xảy muộn 5.6.2 Tại phải bảo mật? Khi thơng tin đảm bảo an tồn giúp tiết kiệm nhiều chi phí, thời gian tinh thần Nếu thông tin bị tiết lộ hay bị đánh cấp thiệt hại nghiêm trọng, dẫn đến phá sản phải chịu truy cứu trước pháp luật Trong kiến trúc Joomla gồm nhiều thành phần cấu tạo nên Thường hoạt động Component, Module, Template (Thành phần mở rộng) Việc cài đặt thêm thành phần mở rộng ảnh hưởng đến độ bảo mật Joomla 5.6.3 Các phương pháp bảo mật a) Sao lưu phục hồi liệu Điều quan trọng phải thường xuyên lưu toàn Website bao gồm thư mục chứa Joomla sở liệu MySQL Hãy lập lịch lần tuần (khuyến cáo ngày lần) để thực lưu Chúng tiết kiệm nhiều công sức tiền Website bị công vài phút vài chục phút để khôi phục lại gần toàn Việc lưu liệu cách chép toàn thư mục(dung lượng lớn) nên sử dụng phần mềm để lưu phục hồi (dung lượng nhanh chóng) b) Bảo vệ file tránh khỏi truy cập trái phép Việc bảo vệ file có nội dung quan trọng, file cấu hình chứa thơng số hệ thống như: tên database, tên truy nhập, mật cần thiết phải đặc biệt lưu tâm Trong Joomla có file - file "configuration.php" Để tăng cường bảo mật cho file "configuration.php" có nhiều cách, nhiên có cách hay sử dụng đề cập diễn đàn, chuyển file "configuration.php" tới nơi an toàn, tránh nhịm ngó hacker Các bước thực sau: - Chuyển file "configuration.php" khỏi thư mục “joomla15”, đặt vào khu vực khác tự tạo chẳng hạn “wamp/conf” Đặt cho tên mới, chẳng hạn “baomat.conf” - Tạo file "configuration.php" thay file cũ chứa nội dung sau:  Bây an tâm, không sợ hacker xâm nhập lấy liệu  Tương tự file khác làm c) Nâng cấp Joomla với phiên 218 Chương 5: Hệ quản trị nội dung mã nguồn mở Joomla Việc nâng cấp Joomla thường xuyên với phiên cần thiết, phiên có nhiều tính tránh số lỗi phiên cũ mắc phải Nâng cấp joomla lên phiên nên thận trọng, tốt lưu toàn liệu trước nâng cấp Và đồng thời nâng cấp với phiên cần phải xác định dòng đời joomla cho phù hợp 219 Câu hỏi ôn tập chương Câu hỏi ôn tập chương Bài 1: Xây dựng Website Trường Đại học Công nghiệp Quảng Ninh hệ CMS Joomla Bài 2: Xây dựng Website Khoa CNTT Trường Đại học Công nghiệp Quảng Ninh hệ CMS Joomla Bài 3: Xây dựng Website bán điện thoại di động hệ CMS Joomla 220 Danh mục từ viết tắt PHỤ LỤC DANH MỤC CÁC TỪ VIẾT TẮT WWW: World Wide Web - Hệ thống siêu văn bản, dùng để truy cập tin Internet HTML: HyperText Markup Language - Ngôn ngữ đánh dấu siêu văn ASP: Active Server Pages - Ngơn ngữ lập trình phía Server PHP: Hypertext Preprocessor - Ngơn ngữ lập trình kịch phía Server JSP: JavaServer Pages - Bộ tiền xử lý kịch Java URL: Uniform Resource Locator - Dùng để tham chiếu tới tài nguyên Internet DBMS: Database Management System - Hệ quản trị sở liệu RDBMS: Relational Database Management System - Hệ quản trị sở liệu quan hệ SQL: Structured Query Language - Ngôn ngữ truy vấn có cấu trúc XML: eXtensible Markup Language - Ngôn ngữ đánh dấu mở rộng RSS: Really Simple Syndication - Là định dạng liệu dựa theo chuẩn XML sử dụng để chia sẻ phát tán nội dung Web RSS Feeds: Chương trình đọc tin RSS GPL: General Public License - Giấy phép công cộng (là giấy phép phần mềm tự phổ biến nhất) FTP: File Transfer Protocol - Phương thức truyền file SMTP: Simple Mail Transfer Protocal – Giao thức truyền tải thư tín đơn giản CMS: Content Management System - Hệ quản trị nội dung mã nguồn mở 221 Tài liệu tham khảo TÀI LIỆU THAM KHẢO Ngôn ngữ HTML cho World Wide Web - Nhóm tác giả Elicom - NXB HN Hướng dẫn tự học Dreamweaver CS3 - Trịnh Quốc Tiến - NXB Hồng Đức Sử dụng PHP & MySQL - Thiết kế Web động – Nguyễn Trường Sinh – NXB Thống kê Giáo trình nhập mơn PHP & MySQL - Xây dựng ứng dụng Web – Nguyễn Thiên Bằng – NXB Lao động xã hội Xây dựng ứng dụng Web PHP & MySQL - Phạm Hữu Khang - NXB Mũi cà mau Sổ tay PHP & MySQL - Nguyễn Tuân Anh Hoàng - NXB Hồng Đức Địa tham khảo cho sở liệu MySQL: http://www.mysql.com/ Địa tham khảo cho Joomla: http://www.joomlaviet.org http://vinaora.com/ http://forum.joomla.org http://help.joomla.org http://extensions.joomla.org http://www.joomla.org 222 Mục lục MỤC LỤC CHƯƠNG 1: MỞ ĐẦU 1.1 Giới thiệu 1.2 Website động gì? 1.3 PHP gì? 1.4 Tại cần dùng PHP? 1.5 Cách làm việc PHP 1.6 MySQL gì? 1.7 Bạn cần để xây dựng Website viết PHP & MySQL 10 1.8 Ứng dụng máy chủ Web Server WAMP làm môi trường để xây dựng Website viết PHP & MySQL 10 1.8.1 WAMP gì? 10 1.8.2 Các đặc điểm trội WAMP 11 1.8.3 Download cài đặt WAMP 11 1.8.4 Các bước cài đặt WAMP 11 1.8.5 Hoàn tất việc cài đặt chạy thử 15 Câu hỏi ôn tập chương 18 CHƯƠNG 2: NGƠN NGỮ LẬP TRÌNH PHP 19 2.1 Nhúng PHP vào trang HTML 19 2.1.1 Nhúng mã PHP HTML 19 2.1.2 Ghi PHP 21 2.2 Khái niệm cú pháp PHP 21 2.3 Biến gì? 21 2.3.1 Khái niệm cú pháp khai báo 22 2.3.2 Tầm hoạt động biến 23 2.3.3 Các biến định nghĩa trước 24 2.3.4 Chuyển đổi kiểu liệu biến 24 2.4 Các kiểu liệu PHP 25 2.4.1 Kiểu boolean 25 2.4.2 Kiểu integer 26 2.4.3 Kiểu số thực (floats, doubles hay real numbers) 26 2.4.4 Kiểu string 27 2.4.5 Kiểu mảng 31 2.4.6 Kiểu object 33 2.4.7 Kiểu resource 34 2.4.8 Kiểu NULL 34 2.5 Hằng PHP 34 2.6 Toán tử PHP 35 2.6.1 Phép gán (assignment) 35 2.6.2 Các phép toán số học 36 2.6.3 Các phép toán chuỗi 36 2.6.4 Phép toán gán kết hợp 37 2.6.5 Tham chiếu 37 2.6.6 Phép toán so sánh 38 2.7 Kiểu Date-Time 39 2.8 Cấu trúc điều khiển PHP 41 223 Mục lục 2.8.1 Cấu trúc if…elseif…else 41 2.8.2 Cấu trúc switch 43 2.8.3 Vòng lặp for 45 2.8.4 Vòng lặp while 46 2.8.5 Vòng lặp do…while 47 2.8.6 Thoát khỏi cấu trúc điều khiển 48 2.9 Hàm 49 2.10 Tương tác với Server Form 53 2.10.1 Tạo Form 53 2.10.2 Lấy liệu từ form click nút submit với phương thức post 54 2.10.3 Lấy liệu từ form click nút submit với phương thức get 57 2.11 Đối tượng session cookie 61 2.11.1 Đối tượng session 61 2.11.2 Đối tượng cookie 68 2.12 Tận dụng mã nguồn có sẵn cách include file 69 2.13 Một số ví dụ minh họa 70 Câu hỏi ôn tập chương 79 CHƯƠNG 3: CƠ SỞ DỮ LIỆU MySQL 84 3.1 Giới thiệu sở liệu MySQL 84 3.2 Kiểu liệu MySQL 84 3.2.1 Kiểu liệu Numeric 84 3.2.2 Kiểu liệu Date and Time 84 3.2.3 Kiểu liệu String 85 3.3 Các phát biểu SQL 86 3.4 Sử dụng phpMyAdmin để quản trị MySQL 86 3.4.1 Tổng quan phpMyAdmin 86 3.4.2 Cài đặt phpMyAdmin 87 3.4.3 Khởi động phpMyAdmin 87 3.4.4 Phân quyền nhóm người sử dụng 88 3.4.5 Làm việc với Cơ sở liệu 88 3.4.6 Làm việc với bảng (Table) 92 Câu hỏi ôn tập chương 94 CHƯƠNG 4: KẾT HỢP PHP VÀ MySQL 96 4.1 Kết nối sở liệu 96 4.2 Truy vấn hiển thị liệu bảng 96 4.2.1 Hiển thị dạng lưới (table) 96 4.2.2 Hiển thị dạng lưới định dạng 99 4.2.3 Hiển thị dạng lưới có phân trang 102 4.2.4 Hiển thị dạng list đơn giản 107 4.2.5 Hiển thị list dạng cột 109 4.2.6 Hiển thị list dạng cột có link 111 4.2.7 Hiển thị list chi tiết có phân trang 115 4.3 Tìm kiếm liệu 120 4.3.1 Tìm kiếm đơn giản 120 4.3.2 Tìm kiếm nâng cao 123 4.4 Thêm liệu 127 4.5 Cập nhật xóa liệu 132 4.6 Một số ví dụ minh họa 141 224 A Mục lục Câu hỏi ôn tập chương 178 CHƯƠNG 5: HỆ QUẢN TRỊ NỘI DUNG MÃ NGUỒN MỞ JOOMLA 179 5.1 Tổng quan hệ quản trị nội dung mã nguồn mở (CMS) 179 5.2 Giới thiệu Joomla 179 5.2.1 Khái niệm Joomla 179 5.2.2 Vài nét lịch sử phát triển Joomla 179 5.2.3 Các dòng phiên Joomla 180 5.2.4 Kiến trúc Joomla 180 5.2.5 Đối với người sử dụng cuối 180 5.2.6 Ứng dụng Joomla 180 5.3 Một số khái niệm Joomla 181 5.3.1 Front-end Back-end 181 5.3.2 Các thành phần mở rộng (Extension) 181 5.3.3 Quản lý nội dung Site 183 5.3.4 Template 184 5.4 Cài đặt Joomla 185 5.4.1 Các bước cài đặt 185 5.4.2 Mở ứng dụng Website trình duyệt 190 5.4.3 Đăng nhập vào trang quản trị ứng dụng Website 191 5.5 Quản trị Joomla 192 5.5.1 Cấu hình tổng thể (Global Configuration) 192 5.5.2 Quản lý người dùng 196 5.5.3 Việt hóa Joomla cách cài đặt gói ngơn ngữ tiếng Việt 197 5.5.4 Thay đổi Template cho Website 201 5.5.5 Tạo nội dung cho Website (Section, Category, Content Item) 204 5.5.6 Cài đặt Component, Module, Plugin 210 5.5.7 Một số thao tác với Main Menu 211 5.6 Bảo mật Joomla 217 5.6.1 Khái niệm bảo mật 217 5.6.2 Tại phải bảo mật? 218 5.6.3 Các phương pháp bảo mật 218 Câu hỏi ôn tập chương 220 PHỤ LỤC 221 TÀI LIỆU THAM KHẢO 222 225 ... Enviroment: mơi trường phát triển tích hợp) - Ứng dụng FTP dùng máy chủ xa Điều hấp dẫn việc phát triển Website động dùng PHP MySQL tất yêu cầu đáp ứng mà không tốn tiền, hệ điều hành sử dụng Apache, PHP... MySQL mã nguồn mở, số trình duyệt Web ứng dụng thương mại nhiều trình soạn thảo văn tốt, có sẵn, miễn phí 1.8 Ứng dụng máy chủ Web Server WAMP làm môi trường để xây dựng Website viết PHP & MySQL... lặp hay phát biểu điều khiển đó, bạn sử dụng phát biểu exit break Khi chương trình gặp phát biểu exit break trình thơng dịch kết thúc q trình diễn dịch cho khối chương trình bên cịn có phát biểu

Ngày đăng: 29/12/2022, 16:27

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan