Giáo trình (Web đóng)

270 303 2
Giáo trình (Web đóng)

Đ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

MỤC LỤC CƠ SỞ DỮ LIỆU 9 I. Các khái niệm về cơ sở dữ liệu 9 II. Hệ quản trị csdl mysql 10 III. Tạo và quản lý database với phpmyadmin 11 IV. Lab database 16 NGÔN NGỮ SQL 17 I. Các câu lệnh thường dùng 17 II. CÁC PHÉP TOÁN VÀ HÀM TRONG MYSQL 21 III. Lab SOL 23 QUẢN LÝ DATABASE VỚI EMS SQL MANAGER 24 I. Kết nối đến MySql Server 24 II. Tạo database 24 III. Tạo table trong database 24 IV. Tạo quan hệ giữa các table 25 V. Nhập dữ liệu vào bảng 26 VI. Export dữ liệu 26 VII. Import dữ liệu vào database 27 PHP CƠ BẢN 28 I. Tổng quan 28 II. Các hàm xử lý chuỗi 35 III. Các hàm thời gian 37 IV. Các hàm quản lý file 39 V. Tạo hàm mới trong php 41 VI. Array 45 VII. Lấy thông tin của client và server 49 VIII. Httpheader 49 IX. Cookie 53 X. Session 54 XI. CÁC HÀM DATABASE 54 NHẤT NGHỆ – NƠI DUY NHẤT CHẤT LƯỢNG ĐÀO TẠO ĐƯỢC ĐẢM BẢO BẰNG NHỮNG CAM KẾT CỤ THỂ 1 XII. Cơ chế đăng nhập, thoát, hạn chế truy cập 56 LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG 60 I. Tổng quan 60 II. Tạo class và sử dụng 62 III. Ví dụ 63 LAB KẾT NỐI DB 72 I. Class db 72 II. Trình bày dữ liệu theo mẫu 1 80 III. Trình bày dữ liệu theo mẫu 2 80 IV. Trình bày dữ liệu theo mẫu 3 81 PHP ỨNG DỤNG: CHUẨN BỊ CHO WEBSITE ADMIN 83 I. Chuẩn bị table users 83 II. Chuẩn bị folder chứa các trang web trong phần admin 83 III. Tạo trang layout 83 IV. Tạo class quản trị 85 V. Tạo chức năng đăng nhập 85 VI. Tạo chức năng kiểm tra đăng nhập, kiểm tra admin 87 VII. Tạo chức năng thoát 88 VIII. Quản trị dữ liệu trong bảng 88 QUẢN TRỊ LOẠI TIN 90 I. Tạo trang thêm loại tin 90 II. Tạo trang xóa loại tin 93 III. Tạo trang chỉnh loại tin 95 IV. Tạo trang xem loại tin 97 V. Bài toán phân trang dữ liệu 101 QUẢN TRỊ TIN TỨC 104 I. Tạo trang xem danh sách tin 104 II. Tạo trang xóa tin 108 III. Tạo trang thêm tin 109 IV. Tạo trang chỉnh 1 tin 119 NHẤT NGHỆ – NƠI DUY NHẤT CHẤT LƯỢNG ĐÀO TẠO ĐƯỢC ĐẢM BẢO BẰNG NHỮNG CAM KẾT CỤ THỂ 2 V. Tạo trang ẩn hiện 1 tin 122 VI. Tạo trang chuyển trạng thái nổi bật của 1 tin 124 LAB TẠO TRANG CHỦ SITE TIN TUC 127 I. Tạo class tin 127 II. Tạo trang layout 127 TIN NỔI BẬT & TIN XEM NHIỀU 130 I. Tạo file noibat_xemnhieu.php 130 II. Tin xem nhiều 131 III. Tin nổi bật 132 TIN MỚI TRONG TỪNG THỂ LOẠI 135 I. Định nghĩa hàm TinMoiTrongTheLoai 135 II. Tạo file tinmoi.php 135 III. Định dạng CSS 136 IV. Nhúng vào trang chủ 137 V. Bổ sung 137 BÌNH CHỌN 138 I. Định nghĩa các hàm 138 II. Tạo form hiện câu hỏi và phương án 139 III. Tạo trang hiện kết quả bình chọn 140 FORM TÌM, VIDEO, QUẢNG CÁO 143 I. Form tìm kiếm 143 II. Video 144 III. div Info 144 IV. Quảng cáo 144 V. Form tìm nâng cao 145 HIỂN THỊ CHI TIẾT MỘT TIN 149 I. Phần 1: Tạo trang hiển thị chi tiết tin: 149 II. Phần 2: Nhúng vào trang chủ 151 III. Phần 3: Hiện số lần xem, ngày đăng, bản in , tin cũ hơn, mới hơn 151 NHẤT NGHỆ – NƠI DUY NHẤT CHẤT LƯỢNG ĐÀO TẠO ĐƯỢC ĐẢM BẢO BẰNG NHỮNG CAM KẾT CỤ THỂ 3 THANH MENU 155 I. Chép folder 155 II. Tạo file menu.php 155 III. Lấy các loại tin trong từng thể loại và hiển thị (sau tag a) 155 IV. Chèn menu.js, menu.css 155 V. Thêm div copyright ở sau cùng 155 VI. Đưa vào trang chủ: 155 LAB HIỂN THỊ CÁC TIN TRONG 1 LOẠI 156 I. Định nghĩa hàm 156 II. Tạo file tintrongloai.php 156 III. Đưa vào trang chủ 158 LAB XỬ LÝ TÌM KIẾM 159 I. Chỉnh file formtim.php và chỉnh các tham số 159 II. Định nghĩa hàm TimKiem 159 III. Tạo file ketquatimkiem.php 160 TẠO TIÊU ĐỀ CHO CÁC TRANG 163 I. Mở file classTin.php và định nghĩa hàm sau: 163 II. Mở file home.php 164 .HTACCESS 165 I. Chuẩn bị 165 II. Giả địa chỉ của 1 tin 165 III. Giả địa chỉ của loại tin 166 IV. Giả địa chỉ cho tìm kiếm 168 V. Các chỉ thị hữu ích khác trong file htaccess 168 LAB TẠO WEBSITE ĐA NGÔN NGỮ 170 I. Database 170 II. Phần xử lý interface 171 CÁC KỸ THUẬT TĂNG TỐC WEBSITE 178 I. Giảm bớt các request 178 NHẤT NGHỆ – NƠI DUY NHẤT CHẤT LƯỢNG ĐÀO TẠO ĐƯỢC ĐẢM BẢO BẰNG NHỮNG CAM KẾT CỤ THỂ 4 II. Sử dụng Content Delivery Network(CDN) 178 III. Nén html 178 IV. Cache ở client dùng htaccess 178 V. Tối ưu các MySQL Query 179 VI. Opcode caching 179 VII. Server file caching 179 ĐĂNG KÝ THÀNH VIÊN 183 I. Tạo form 183 II. Định dạng CSS 185 III. Xử lý khi submit 185 IV. Định nghĩa hàm DangKyThanhVien: 186 V. Lưu vào db 190 VI. Kích hoạt tài khoản 190 VII. Kiểm tra Username bằng Ajax 193 VIII. Trang đăng ký thành công 194 CAPTCHA IMAGE 195 I. Tạo hình 195 II. Đưa hình captcha vào form đăng ký 196 GỞI PASSWORD 197 ĐỔI PASSWORD 198 I. Tạo form 198 II. Code kiểm tra login (ở đầu trang): H 199 III. Xử lý đổi pass 199 IV. Hiện thông báo lỗi 199 V. Định nghĩa hàm đổi pass 199 VI. Hiện lại các giá trị trong form khi submit 201 VII. Tạo trang doipassthanhcong.php 201 HITCOUNTER 203 I. Chuẩn bị 203 II. Tạo file hiện số đếm 203 NHẤT NGHỆ – NƠI DUY NHẤT CHẤT LƯỢNG ĐÀO TẠO ĐƯỢC ĐẢM BẢO BẰNG NHỮNG CAM KẾT CỤ THỂ 5 III. Chèn số đếm vào trang php: 205 GỬI MAIL DÙNG PHP MAILER 206 I. Tạo form gửi mail 206 II. Định dạng 206 III. Bật module mã hoá dữ liệu 207 IV. Chép thư viện PHP Mailer vào site 207 V. Viết hàm gửi mail 207 VI. Code xử lý 208 DOWNLOAD FILE 210 I. Chuẩn bị 210 II. Tạo trang web để down 1 file 210 III. Tạo trang web để hiện list dữ liệu từ database 211 UPLOAD FILE 212 IV. Tạo form upload 212 V. Hiện list dữ liệu từ db 215 CHUẨN BỊ SITE BÁN ĐIỆN THOẠI 218 I. Database 218 II. Tạo các table 218 III. Chuẩn bị/ dự định tạo các file/folder 222 SHOW SẢN PHẨM MỚI 224 I. Tạo file spmoi.php 224 TRANG LAYOUT 226 XÂY DỰNG GIỎ HÀNG 228 I. Hiện giỏ hàng – tóm tắt 232 II. Hiện giỏ hàng readonly: 233 III. Hiện giỏ hàng – update 236 ĐƯA GIỎ HÀNG VÀO TRANG CHỦ 240 I. Hiện giỏ hàng tóm tắt khi user nhắp nút đặt hàng 240 NHẤT NGHỆ – NƠI DUY NHẤT CHẤT LƯỢNG ĐÀO TẠO ĐƯỢC ĐẢM BẢO BẰNG NHỮNG CAM KẾT CỤ THỂ 6 II. Hiện giohang_update 241 FORM MUA HÀNG 244 I. Tạo file muahang.php 244 II. Hiện thông tin user đang đăng nhập 244 III. Hiện form thông tin người nhận 245 IV. Hiện các phương thức thanh toán và giao hàng: 247 V. Lồng trang muahang.php vào trang chủ 248 XỬ LÝ MUA HÀNG 249 I. Tạo file xulymuahang.php 249 II. Lưu đơn hàng và báo lỗi nếu có 249 III. Lưu chi tiết đơn hàng , hiện thông báo, hiện nút thanh toán 252 IV. Lồng trang xulymuahang vào trang chủ 256 YÊU CẦU SINH VIÊN THỰC HIỆN TẠI NHÀ 257 I. Tạo trang hiện chi tiết 1 sản phẩm 257 II. Tạo trang hiện các sản phẩm trong 1 loại 257 III. Thực hiện chức năng tìm kiếm 257 IV. Nhúng icon yahoo chat vào trang chủ 257 V. Làm form login trên trang chủ 257 VI. Làm phần quản trị 257 PHẦN BỔ SUNG: 258 ĐẾM SỐ NGƯỜI XEM TRONG TỪNG MỤC 258 I. Tạo table 258 II. Định nghĩa hàm lưu thông tin 258 III. Gọi hàm LuuThongTin 260 IV. Tạo hàm đếm số user đang xem trong từng loại tin , trong từng thể loại 260 V. Thống kê số người đang xem từng loại 262 VI. Hiện thông tin tổng kết 262 ĐĂNG NHẬP POPUP 264 I. Tạo form đăng nhập 264 NHẤT NGHỆ – NƠI DUY NHẤT CHẤT LƯỢNG ĐÀO TẠO ĐƯỢC ĐẢM BẢO BẰNG NHỮNG CAM KẾT CỤ THỂ 7 II. Tạo link đăng nhập: 265 III. Nạp form đăng nhập 265 IV. Thực hiện trang xử lý đăng nhập 267 V. Tạo file thoat.php (Mời bạn tự làm) 269 VI. Hiện lời chào khi user nạp lại trang 269 NHẤT NGHỆ – NƠI DUY NHẤT CHẤT LƯỢNG ĐÀO TẠO ĐƯỢC ĐẢM BẢO BẰNG NHỮNG CAM KẾT CỤ THỂ 8 CƠ SỞ DỮ LIỆU I. Các khái niệm về cơ sở dữ liệu 1. Dữ liệu Là các thông tin cần lưu trữ để sử dụng lại 1. Cơ sở dữ liệu (database) Là các dữ liệu được lưu trữ có tổ chức 2. Hệ quản trị cơ sở dữ liệu: Là các chương trình giúp quản lý và tổ chức cơ sở dữ liệu. Ví dụ: MySQL, MSSQL, … 3. Table: Mỗi database chứa nhiều table. Mỗi table là 1 bảng dữ liệu, chứa một mảng thông tin nào đó. Mỗi table có 1 tên, gồm nhiều cột nhiều hàng. Mỗi dòng của table là 1 đơn vị dữ liệu cần lưu trữ, ví dụ như 1 tin, 1 câu hỏi bình chọn, 1 user. Mổi dòng gọi là 1 record hay mẫu tin. Mỗi cột của table gọi là 1 field hay trường. Dữ liệu trong 1 cột thuộc 1 kiểu xác định nào đó. 4. Khoá chính Là cột đặc biệt trong table, chứa thông tin để phân biệt từng record với nhau trong table. Khoá chính có thể gồm nhiều field nhưng thường là 1 field. Field làm khoá chínnh nên có kiểu số, tăng tự động. 5. Khoá ngoại Là cột trong 1 table mà dữ liệu trong nó là tham khảo đến khoá chính ở bảng khác. Trong 1 table có thể có nhiều khoá ngoại, mỗi khoá ngoại. 6. Quan hệ giữa hai bảng Hai bảng có quan hệ với nhau khi dữ liệu trong chúng là bổ sung cho nhau. Có ba loại quan hệ thường gặp: Quan hệ 1-1: 1 record bên bảng A có quan hệ với 1 record bên bảng B và ngược lại. Quan hệ 1-nhiều: 1 record bên bảng A có quan hệ với nhiều record bên bảng B. Quan hệ nhiều-nhiều:1 record ở bảng A có quan hệ với nhiều record bên bảng B & ngược lại. NHẤT NGHỆ – NƠI DUY NHẤT CHẤT LƯỢNG ĐÀO TẠO ĐƯỢC ĐẢM BẢO BẰNG NHỮNG CAM KẾT CỤ THỂ 9 I. Hệ quản trị csdl mysql - Giới thiệu MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, hoạt động trên nhiều hệ điều hành,. MySQL miễn phí hoàn toàn. Có nhiều phiên bản cho các hệ điều hành khác nhau: Windows, Linux, Mac OS, Unix, SGI Irix,Solaris, SunOS, - Storage Engine Trong MySQL, có nhiều cách tổ chức lưu dữ liệu cho các table : MyISAM , InnoDB, Memory,… MyISAM là storage engine mặc định của MySQL. Mỗi table lưu theo kiểu MyISAM sẽ được lưu trên 3 file : tableName.FRM (chứa định dạng của table), tableName.MYD (lưu dữ liệu), tableName.MYI (lưu index) . MyISAM hỗ trợ full-text searches còn InnoDB thì không InnoDB là engine hỗ trợ transaction (commit, rollback, and crash-recovery capabilities) để bảo vệ dữ liệu. InnoDB hỗ trợ relationship còn MyISAM thì không. - Các kiểu dữ liệu trong MySql Kiểu chuỗi • CHAR và VARCHAR: Lưu text, trong đó char có độ dài cố định còn varchar có độ dài không cố định. • BINARY và VARBINARY: Gần giống như Char và Varchar nhưng chứa những binary strings (Char, Varchar là none binary string). Điều này có nghĩa là không có Character set, do đó việc sort và compare sẽ chỉ dựa trên giá trị các byte được lưu. Độ dài của chuỗi cũng tính bằng số byte (Char, varchar tính bằng số ký tự) • BLOG và TEXT: chứa text có độ dài lớn. BLOB values chứa các binary strings (byte strings). Chúng không có character set, việc sorting và comparison chỉ dựa trên giá trị các byte column. TEXT là các nonbinary strings (character strings). Chúng có character set, việc sorting và comparison sẽ dựa theo collation của character set được dùng Kiểu Ngày tháng • DateTime: Lưu dữ liệu kiểu ngày giờ. MySql hiển thị ngày giờ theo kiểu 'YYYY-MM- DD HH:MM:SS' có giá trị từ '1000-01-01 00:00:00' đến '9999-12-31 23:59:59'. NHẤT NGHỆ – NƠI DUY NHẤT CHẤT LƯỢNG ĐÀO TẠO ĐƯỢC ĐẢM BẢO BẰNG NHỮNG CAM KẾT CỤ THỂ 10 [...]... B3: Nhắp OK NHẤT NGHỆ – NƠI DUY NHẤT CHẤT LƯỢNG ĐÀO TẠO ĐƯỢC ĐẢM BẢO BẰNG NHỮNG CAM KẾT CỤ THỂ 27 PHP CƠ BẢN I Tổng quan - PHP (viết tắt của Hypertext Preprocessor) là một ngôn ngữ lập trình được dùng để phát triển các ứng dụng web Mã lệnh PHP thực thi trên webserver - Mỗi dòng lệnh PHP kết thúc bằng dấu ; - Trong trang html, các lệnh php nằm trong tag hoặc - Các khối... "abcde" echo substr("abcdef", 2, -1), ""; // returns "cde" echo substr("abcdef", 4, -4), ""; // returns "" echo substr("abcdef", -3, -1) ,""; // returns "de" 43 mb_convert_case $str = "lập trình ứng dỤng "; echo mb_convert_case($str, MB_CASE_UPPER ,'utf-8'),""; echo mb_convert_case($str, MB_CASE_LOWER ,'utf-8'),""; echo mb_convert_case($str, MB_CASE_TITLE ,'utf-8'),""; 44 md5 . engine_name | AUTO_INCREMENT [=] value | CHARACTER SET [=] charset_name Ví dụ: CREATE TABLE bandocykien ( `idYKien` int(11) NOT NULL auto_increment, `idTin` int(11) NOT NULL default '0', . CHARSET=utf8 AUTO_INCREMENT=1 ; 19. Xoá table DROP TABLE [IF EXISTS] tbl_name Ví dụ: DROP TABLE bandocykien; 20. Chèn record vào table INSERT INTO tbl_name VALUES (value1, value2,…); INSERT INTO

Ngày đăng: 10/07/2014, 01:58

Từ khóa liên quan

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

Tài liệu liên quan