Mã nguồn mở

199 393 0
Mã nguồn mở

Đ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

NG CÔNG NGH THÔNG TIN TPHCM KHOA CÔNG NGH THÔNG TIN  GIÁO TRÌNH MÔN HỌC CÁC HỆ THỐNG NGUỒN MỞ i b) DƯƠNG THÀNH PHẾT NGUYỄN MINH THÀNH VÕ TẤN DŨNG Tp. H Chí Minh, 2013 Mục Lục MỤC LỤC . 2 LỜI MỞ ĐẦU 7 PHẦN I : TỔNG QUAN VỀ NGUỒN MỞ VÀ CƠ SỞ DỮ LIỆU MYSQL 8 CHƯƠNG 1 : TỔNG QUAN VỀ CÁC HỆ THỐNG NGUỒN MỞ . 9 I. KHÁI NIỆM VỀ PHẦN MỀM NGUỒN MỞ . 9 II. LỊCH SỬ PHÁT TRIỂN . 10 III. CÁC LOẠI GIẤY PHÉP 10 IV. ƯU NHƯỢC ĐIỂM CỦA PHẦN MỀM NGUỒN MỞ . 11 IV.1. Ưu điểm . 11 IV.2. Nhược điểm . 13 V. PHÂN LOẠI PHẦN MỀM NGUỒN MỞ . 14 V.1. Nhóm Hệ Điều Hành 14 V.2. Nhóm Cơ sở dữ liệu . 15 V.3. Nhóm ứng dụng Desktop 15 V.4. Nhóm Server 15 V.5. Nhóm ứng dụng web . 16 V.5.1. Loại hệ thống chuyên về CMS/Portal . 16 V.5.2. Loại hệ thống chuyên về Forum . 17 V.5.3. Loại hệ thống chuyên về Blog 17 V.5.4. Loại hệ thống chuyên về thương mại điện tử (eCommerce) . 18 V.5.5. Loại hệ thống chuyên về ERP . 18 V.5.6. Loại hệ thống chuyên về Social Networking 18 VI. KẾT LUẬN ERROR! BOOKMARK NOT DEFINED. CHƯƠNG 2 : TỔNG QUAN VỀ CSDL MYSQL . 19 I. TỔNG QUAN VỀ MYSQL . 19 I.1. hình client – server 19 I.2. Quy trình cài đặt MySQL . 20 I.2.1. Tải hệ quản trị MySQL 20 I.2.2. Quy trình cài đặt 20 I.2.3. Khởi động và tắt dịch vụ 27 I.2.4. Thao tác tại client 28 I.2.5. Thay đổi password cho tài khoản root . 29 II. CÁC THAO TÁC CƠ BẢN TRÊN CSDL MYSQL . 29 II.1. Xem các cơ sở dữ liệu 29 II.2. Tạo cơ sở dữ liệu mới 29 II.3. Xóa cơ sở dữ liệu . 29 II.4. Thêm tài khoản người dùng 30 III. TỔNG KẾT ERROR! BOOKMARK NOT DEFINED. CHƯƠNG 3 : LÀM VIỆC VỚI MYSQL . 31 I. TABLE – BẢNG 31 I.1. Các kiểu dữ liệu trên bảng . 31 I.1.1. Kiểu số (numberic) . 31 I.1.2. Kiểu chuỗi kí tự 32 I.1.3. Kiểu hỗn hợp . 32 I.1.4. Kiểu ngày – giờ . 32 I.1.5. Các từ khoá định nghĩa cột (modifiers) 33 I.2. Các thao tác trên bảng 33 I.2.1. Tạo bảng . 33 I.2.2. Xem thông tin bảng 34 I.2.3. Xóa bảng . 34 I.2.4. Thay đổi cấu trúc bảng . 34 I.2.5. Chèn dữ liệu vào bảng 35 II. QUERY - TRUY VẤN 36 II.1. Cú pháp truy vấn . 36 II.2. Các thao tác truy vấn 37 II.2.1. Truy vấn chọn . 37 II.2.2. Truy vấn thống kê . 38 II.2.3. Truy vấn lồng 38 II.2.4. Mệnh đề Join 39 II.2.5. Truy vấn chèn dữ liệu . 39 II.2.6. Truy vấn xóa . 39 II.2.7. Truy vấn cập nhật . 39 II.3. Toán tử và hàm trong truy vấn . 39 II.3.1. Toán tử . 39 II.3.2. Hàm toán học . 40 II.3.3. Hàm điều kiện 40 II.3.4. Hàm logic 41 II.3.5. Hàm chuỗi 41 II.3.6. Hàm thời gian . 41 III. BẢO MẬT VÀ QUẢN TRỊ 44 III.1. Bảo mật CSDL MySQL 44 III.1.1. Phương thức bảo mật trong MySQL 44 III.1.2. Cấp phát tài khoản người dùng và phân quyền . 44 III.1.3. Xóa tài khoản 45 III.1.4. Cấp quyền & xoá quyền cho tài khoản người dùng 45 III.2. Quản trị . 45 III.2.1. Backup (sao lưu) dữ liệu . 45 III.2.2. Restore (phục hồi) dữ liệu 45 III.2.3. Các hàm trên hệ thống của MySQL 45 III.2.4. Sử dụng mysqladmin 46 IV. TỔNG KẾT . ERROR! BOOKMARK NOT DEFINED. PHẦN II : NGÔN NGỮ LẬP TRÌNH WEBSITE PHP . 47 CHƯƠNG 4 : CƠ BẢN VỀ NGÔN NGỮ PHP . 48 I. TỔNG QUAN . 48 I.1. Ngôn ngữ PHP . 48 I.2. Thông dịch trang PHP . 49 I.3. Ngôn ngữ kịch bản 49 II. WAMP SERVER . 50 II.1. Giới thiệu về WampServer 50 II.2. Các thành phần trong Wampserver 2.2E 51 II.2.1. Cài đặt Wampserver 2.2E . 51 II.2.2. Sử dụng (cấu hình) Wampserver . 54 III. CƠ BẢN VỀ PHP . 58 III.1. Cấu trúc cơ bản . 58 III.2. Xuất giá trị ra trình duyệt . 58 III.3. Khái niệm biến 59 III.3.1. Biến trong PHP . 59 III.3.1. Các kiểu dữ liệu trong PHP . 59 III.3.2. Thay đổi kiểu dữ liệu 60 III.3.3. Kiểm tra kiểu dữ liệu của biến 61 III.3.4. Biến trong biến 62 III.3.5. Tầm vực của biến . 63 III.4. Hằng 64 III.4.1. Khái niệm . 64 III.4.2. Kiểm tra hằng 65 III.5. Khái niệm về chuỗi 65 III.6. Toán tử trong PHP . 65 III.6.1. Toán tử gán 65 III.6.2. Toán tử số học . 66 III.6.3. Toán tử so sánh . 66 III.6.4. Toán tử logic 66 III.6.5. Toán tử kết hợp . 67 III.7. Các biểu thức cơ bản trong PHP 67 III.7.1. Biểu thức điều kiện 67 III.7.2. Vòng lặp while . 67 III.7.3. Vòng lặp Do…while 68 III.7.4. Vòng lặp For . 68 III.7.5. Biểu thức Switch case 68 III.8. XỬ LÝ GIÁ TRỊ FORM 69 III.8.1. Phương thức GET . 70 III.8.2. Phương thức POST . 70 III.9. Thao tác trên tập tin . 70 III.9.1. Đóng - mở một tập tin . 70 III.9.2. Đọc – ghi tập tin . 71 III.10. Xử Lý Chuỗi và Thời Gian . 73 III.10.1. Xử lý chuỗi 73 III.10.2. Xử lý date time . 78 III.11. MẢNG TRONG PHP 80 III.11.1. Định nghĩa mảng trong PHP . 80 III.11.2. Khái niệm mảng kết hợp . 81 III.11.3. Phép lặp trong mảng 81 III.11.4. Các hàm hỗ trợ trong PHP 82 III.12. CƠ BẢN VỀ COOKIE VÀ SESSION TRONG PHP 83 III.12.1. Tổng quan về Cookie 83 III.12.2. Tổng quan về Session . 85 III.13. KHÁI NIỆM VỀ HÀM . 89 III.13.1. Hàm tự định nghĩa 89 III.13.2. Hàm tự định nghĩa với các tham số 90 III.13.3. Hàm tự định nghĩa với giá trị trả về 90 III.13.4. Gọi lại code trong PHP 91 III.13.5. Tập tin dùng chung . 92 CHƯƠNG 5 : CƠ BẢN VỀ PHP VÀ MYSQL . 95 I. KẾT NỐI CƠ SỞ DỮ LIỆU . 95 II. LỰA CHỌN CSDL . 95 III. THỰC THI CÂU LỆNH TRUY VẤN 95 IV. ĐẾM SỐ DÒNG DỮ LIỆU 95 V. LẤY DỮ LIỆU TỪ BẢNG ĐƯA VÀO MẢNG 95 VI. ĐÓNG KẾT NỐI CƠ SỞ DỮ LIỆU . 95 VII. VÍ DỤ ÁP DỤNG . 95 VIII. TẠO FILE KẾT NỘI CSDL 97 IX. CÁC THAO TÁC TRÊN MẨU TIN 98 IX.1. Thêm mẩu tin 98 IX.2. Cập nhật mẩu tin . 102 IX.3. Xoá mẩu tin . 104 IX.4. Tổng kết Error! Bookmark not defined. PHẦN III : HỆ THỐNG NGUỒN MỞ JOOMLA 106 CHƯƠNG 6 : CƠ BẢN HỆ THỐNG NGUỒN MỞ JOOMLA 107 I. KHÁI NIỆM VỀ HỆ QUẢN TRỊ NỘI DUNG (CMS) 107 II. TỔNG QUAN VỀ JOOMLA . 108 II.1. Lịch sử về Joomla 110 II.2. Các phiên bản Joomla . 110 II.3. Kiến trúc 111 II.4. Đối với người dùng cuối 111 II.5. Điều Joomla có thể làm . 112 II.6. Một vài website Joomla 112 II.7. Thể hiện trang web thông qua CMS 114 II.8. Cài đặt Joomla 115 II.8.1. Tải bộ cài đặt Joomla 115 II.8.2. Yêu cầu hệ thống 115 II.8.3. Cài đặt website Joomla 116 II.8.4. Cài đặt Joomla trên host server . 123 III. TRANG FRONT-PAGE . 124 IV. TẠO CÁC BÀI VIẾT 124 IV.1. Đăng nhập trang quản trị . 124 IV.2. Tạo bài viết mới 126 IV.3. Thay đổi tiêu đề trang chủ 128 V. TỔ CHỨC DỮ LIỆU TRÊN WEBSITE 131 V.1. Sections – Categories - Contents . 131 V.2. Tạo Section 133 V.3. Tạo Category . 135 V.4. Đăng bài viết có thuộc về một section và category 138 V.5. Tạo ngắt “read more…”cho bài viết 139 V.6. Tạo ngắt trang (page break) cho bài viết . 141 VI. QUẢN LÝ BÀI VIẾT VỚI ARTICLE MANAGER . 142 VI.1. Lọc bài viết 144 VI.2. Thay đổi thứ tự bài viết 144 VI.3. Ẩn – xoá bài viết 144 VI.4. Các tham số cho bài viết . 145 CHƯƠNG 7 : TINH CHỈNH JOOMLA 148 I. HỆ THỐNG MENU CHO WEBSITE 148 I.1. Tổng quan về hệ thống menu . 148 I.2. Trang quản lý Menu Manager 149 I.3. Tạo menu thành phần liên kết đến một bài viết . 152 I.4. Ẩn menu thành phần 155 I.5. Tạo menu thành phần liên kết đến một Section . 157 I.6. Tạo menu thành phần liên kết đến một Category 159 II. QUẢN LÝ NGƯỜI DÙNG VÀ LIÊN HỆ 162 II.1. Phân quyền trong Joomla . 162 II.2. Thêm User mới 163 II.3. Tạo trang liên hệ . 164 II.4. Tạo danh mục các liên hệ 166 II.5. Tạo menu liên kết đến trang liên hệ . 167 II.6. Tạo menu đăng bài . 169 III. QUẢN LÝ CÁC MODULE 171 III.1. Tạo một Module 173 III.2. Chỉnh sửa Module . 174 III.3. Xoá – kích hoạt – thay đổi thứ tự Module 175 IV. QUẢN LÝ CÁC BÌNH CHỌN (POLLS) 175 IV.1. Thêm câu hỏi bình chọn 175 IV.2. Chọn câu hỏi bình chọn đăng lên website . 176 V. QUẢN LÝ QUẢNG CAO (ADVERTISEMENT & BANNER) 177 V.1. Quản lý khách hàng đăng quảng cáo 177 V.2. Quản lý danh mục quảng cáo 178 V.3. Quản lý các banner quảng cáo 180 V.4. Đăng banner quảng cáo 182 VI. QUẢN LÝ ĐƯỜNG DẪN SITE (BREADCUMBS) . 183 VI.1. Thay đổi menu mặc định . 183 VI.2. Chỉnh sửa Module Breadcumbs . 184 VII. CÁC MODULE KHÁC 185 VII.1. Feed Display module . 185 VII.2. Who’s online module . 187 VII.3. Archive module 187 VII.4. Custom HTML module . 187 VII.5. Lastest News và Popular module 188 VII.6. Newsflash module . 189 VII.7. Syndication module . 190 VII.8. Statistics module . 192 VII.9. Wrapper module . 192 VII.10. Footer module 193 VII.11. Login module 193 VII.12. Random Image . 194 VII.13. Search module 194 VIII. CÁC CHỨC NĂNG GLOBAL . 196 VIII.1. Site 196 VIII.2. System 197 VIII.3. Server 198 Li M u Giáo trình ngun m trang 7 Lời Mở Đầu  Ngày nay, trong xu th công ngh ngày càng phát trin t  c tip thêm sc mnh. Các ng dn t xut hin ngày nhic bit là các website giao dch mua bán qua m tip cn vi th ng, các công ty hu hu phi có mg m tip cm chi phí nhi Chính vì th, nhu cu có mi tu ln trên th ng  xây dc mi hoàn chnh t con s 0 thì rt mt thi gian và tn nhiu chi phí v nhân s có mt website tt trong thi gian nhanh nht, thì vic ng dng các h thng ngun m là vic hoàn toàn cn thit. Các ng dng ngun m t phát trin và nh. Vi mong mun có c nhng sn phm tt, các cng ngun m n ngi công b nhng sn phm, công ngh, và k thu  thng ngun m ngày càng tt  Vi nhu cc vit nhm cung cp cho sinh viêng Công Ngh Thông Tin Tp. H Chí Minh mt kin bn và nn tng v mt s các h thng ngun mn mt h thng ngun m. Cuc u nghiên cn t và h thng thông tin. c chia làm 3 phn :  Ph d liu ngun m MySQL  Phn ngôn ng lp trình web PHP  Phn h thng ngun m Joomla Trong qua trình biên so gng tip cn nhng kin thc mi nh giúp sinh viên có nhng kin thc phù hp vi hin trng thc t. Tuy nhiên,      PHẦN I : TỔNG QUAN VỀ NGUỒN MỞ VÀ CƠ SỞ DỮ LIỆU MYSQL Tng Quan V Các H Thng Ngun M Giáo trình ngun m trang 9 Chương 1 : Tổng Quan Về Các Hệ Thống Nguồn Mở Tóm tắt: Giới thiệu về các khái niệm cơ bản về nguồn mở, lịch sử phát triển của hệ thống nguồn mở, các giấy phép xuất bản nguồn mở và một số nguồn mở phổ biến hiện nay. I. Khái niệm về phần mềm nguồn mở Phn mm ngun m (PMNM) là nhng phn m c cung c i dng ngun, không ch min phí tin mua ch yu là min phí v bn quyc ngun ca phn mnh v giy phép PMNM (ví d General Public Licence  i s dng có quyn si, ci tin, phát trin và nâng cp theo mt s nguyên tnh không cn phc i vi các phn mm nguc là phn mi). PMNN do mi, mt nhóm ngi hay mt t chc phát triu tiên cùng vi ngun, công b công khai cho c s  dng s n, sa các li (nu có) và b  hoàn thin sn phm cho các phiên bn tip theo.  c sao chép, sa cha thoi mái hay s dng vào mc. ngun m c công b i rt nhiu kin khác nhau, mt s n, s dng và bán tùy ý min là gi nguyên các dòng v ngun gc sn phm, mt s bt buc tt c các sn phm làm ra t  i là phn mm ngun m, mt s i phi công b trn vn ngun, mt s khác không cho phép s dng vào mi, mt s khác li không có ràng bu  Nhà cung cp PMNM có quyn yêu ci dùng tr mt s chi phí v các dch v bo hành, hun luyn, nâng cc là nhng dch v  phc v  c bán các sn phm ngun m vì nó là tài sn ca trí tu chung, không phi là tài sn riêng ca mt nhà cung cp nào. Tin ích Open Source mang li chính là quyn t do s di mn t  nghiên cu cu trúc cnh sa phù hp vi nhu Tng Quan V Các H Thng Ngun M Giáo trình ngun m trang 10 cu, truy cp vào ngun, quyn t do phân phi li các phiên bn cho nhii, quyn t do ci ting bn ci tin vì mng. II. Lịch sử phát triển i sáng lp ra d án GNU i mn mt h u hành máy tính min phí GNU (t ly t các ch     Gnu không phi là Unix). Bi dùng máy tính s t do h   thành thut ng  ch các phn mm t do: mi c quyn t do sao chép và phiên bi nó  bt c m dù ln hay nh  nào. Stallman còn là tác gi u tiên ca mt lot các sn phm kiu phn mm son th  ình dch GNU C Compiler, phn mm g ri GNU Debugger và nhiu gói phn mm GNU khác. Ông là Ch tch ca T chc Phn mm T do (Free Software Foundation). III. Các loại giấy phép Xét v n quyn s dng, phn mm có nhiu loi gi sau: Phn mi (Commercial Software) là phn mm thuc bn quyn ca tác gi hoc các hãng phn mm, ch c cung ci dng nh i dùng phi mua và không có quyn bán li. Windows, Microsoft Office, Oracle là các ví d v phn mm i. Phn mm th nghim gii hn (Limited Trail Software) là các phiên bn gii hn ca phn m  c cung cp min phí vi m nghêm, gii thiu sn phm. Loi này có th có gii hn v mt chi hn v thi gian c s dng. Chng hn mt phn mi dùng ly t Internet v dùng th  cho gii hn s dt ngm s vô hiu hoá phn mm. Phn mm chia s (Shareware) là loi phn mn mi c phân phi t t s giy phép khuyn cáo các cá nhân hoc t chc c mua theo nhu kin c th . Ví d phn m nén d liu Winzip là phn mm chia s. Phn mi - phn mm t do (Free ware) là các phn mc dùng t do không phi tr tii tuân th bt c u kin nào. Trong loi phn mm này có loi phn mi dng nh phân có th 

Ngày đăng: 30/12/2013, 19:30

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

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

Tài liệu liên quan