TRƯỜNG CAO ĐẲNG CƠ ĐIỆN HÀ NI
KHOA CÔNG NGH THÔNG TIN
GIÁO TRÌNH
TỐI ƯU HOÁ WEBSITE VÀ AJAX
(Lưu hành nội b)
Hà Nội năm 2025
1
MỤC LỤC
Bài 1. Tng quan v Ajax ......................................................................................... 4
1. Ajax là gì? ......................................................................................................... 4
2. Viết chương trình Ajax Javascript .................................................................... 4
Bài 2. Tìm hiu jQuery Ajax ..................................................................................... 7
1. Download thư viện jQuery ................................................................................ 7
2. Xây dng các file trong ng dng ..................................................................... 7
3. Viết code jquery ajax ........................................................................................ 7
4. Tìm hiu các thuc tính jquery ajax .................................................................. 8
Bài 3. Phương thức POST trong jQuery Ajax ........................................................ 10
1. Phương thức post vi $.ajax ............................................................................ 10
2. Phương thức post vi $.post ............................................................................ 12
Bài 4. Phương thức GET trong jQuery Ajax .......................................................... 14
1. Phương thức GET vi $.ajax........................................................................... 14
2. Phương thức GET vi $.get ............................................................................ 15
3. Truyền dưới dng tham s trong url................................................................ 16
Bài 5. S dng Ajax kết qu tr v kiu Text ......................................................... 17
1. To CSDL bảng người dùng ........................................................................... 17
2. To trang index.php hin th danh sách .......................................................... 17
3. Tạo trang text.php để lấy danh sách người dùng ............................................ 18
Bài 6. S dng Ajax ly kết qu tr v dng XML ................................................. 20
1. Gii thiệu sơ lược v XML ............................................................................. 20
2. To trang hin th danh sách thành viên. ........................................................ 20
3. To trang ly danh sách thành viên và tr v định dng xml .......................... 21
Bài 7. S dng Ajax kết qu tr v kiu JSON ....................................................... 23
1. To trang hin th danh sách thành viên ......................................................... 23
2
2. To trang ly danh sách thành viên và tr kết qu v dng json ..................... 24
Bài 8. Validate form đăng ký thành viên với Ajax ................................................. 26
1. Tạo form đăng ký thành viên .......................................................................... 26
2. To database table member ............................................................................. 28
3. To trang kim tra d liệu và lưu dữ liệu để ajax gọi đến .............................. 28
4. Viết code ajax validate thông tin ..................................................................... 29
Bài 9. Phân trang ajax có thay đổi URL cho SEO .................................................. 32
1. Tạo cơ sở d liu ............................................................................................. 32
2. Viết thư viện phân trang .................................................................................. 32
3. Viết thư viện x lý database ............................................................................ 36
4. Xây dng trang hin th danh sách phân trang ................................................ 37
Bài 10. X lý tiến trình khi làm vic vi ajax ......................................................... 42
1. Tính toàn cc trong javascript ......................................................................... 42
2. Hàm always trong jquery ajax......................................................................... 42
3. To trang tr v kết qu chuỗi json để ajax gi ti ......................................... 43
4. To file x lý tiến trình ajax ............................................................................ 43
Bài 11. Viết thư viện captcha và kim tra mã captcha bng ajax ........................... 46
1. Tạo thư viện captcha bng php ....................................................................... 46
2. To file hin th hình nh captcha bng php ................................................... 49
3. To form liên h hin th captcha .................................................................... 49
4. To trang nhn request ajax kim tra mã captcha bng php ........................... 52
Bài 12. Search ajax Autocomplete có phân trang ................................................... 54
1. Xây dng database .......................................................................................... 54
2. Xây dựng thư viện phân trang ......................................................................... 55
3. Xây dng model x lý database ...................................................................... 57
4. Xây dng hàm ly danh sách search autocomplete và tr v chui JSON ..... 59
5. Xây dng trang hin th danh sách và search autocomplete ........................... 59
3
Bài 13. Delay the keyup event for jquery ajax ........................................................ 62
1. To các file xliên quan ............................................................................. 62
2. Không s dụng delay keyup event để gi ajax ............................................... 63
3. K thut Delay the keyup event for jquery ajax ............................................. 63
Bài 14. jQuery Ajax scrolling pagination vi PHP và MYSQL ............................. 65
1. Ajax Scrolling Pagination vi PHP và MYSQL ............................................. 65
2. Viết jQuery Ajax Scrolling Pagination ........................................................... 66
Bài 15. jQuery Ajax pagination load more vi PHP và MYSQL ........................... 70
1. Ý tưởng k thut jQuery ajax pagination load more....................................... 70
2. Các bước thc hin ajax pagination load more ............................................... 70
Bài 16. K thut x lý hàng đợi khi gi ajax .......................................................... 75
1. Tình huống bài toán hàng đợi ......................................................................... 75
2. X lý ajax theo hàng đợi ................................................................................. 76
Bài 17. Validate form Modal Bootstrap vi jQuery Ajax ....................................... 81
1. Tạo form đăng ký thành viên với Modal Bootstrap ........................................ 81
2. To file x lý truy vn CSDL ......................................................................... 82
3. X lý jQuery Validate thông tin ...................................................................... 84
4. B sung phn x lý thông báo li ................................................................... 86
Bài 18. Hướng dn crawl d liu trang chonbaihat bng Ajax + PHP ................... 87
1. Ý tưởng bóc tách d liu trang chonbaihat ..................................................... 87
2. Code bóc tách d liu trang chonbaihat .......................................................... 87
4
BÀI 1. TỔNG QUAN VỀ AJAX
1. Ajax là gì?
Ajax (Asynchronous JavaScript and XML) mt k thut giúp to ra trang
Web động hoàn toàn không reload li toàn b trang. Đối vi công ngh web hin
nay thì ajax không th thiếu, nó là mt phn làm nên s sinh động cho website. Còn
đối vi ngành SEO thì khi s dng ajax li không tt, ti vì bot Google s không
index được. Nhưng thực tế ta cách khc phc vấn đề này ta s tìm hiu
mt bài khác.
Ajax được viết bng ngôn ng Javascript nên chy trên client, tc mi
trình duyt s chạy độc lp hoàn toàn không ảnh hưởng ln nhau. Hin nay nhiu
thư viện javascript như [jQuery], [Angular], [React JS] đu h tr k thut này nhm
giúp chúng ta thao tác d dàng hơn. Nhưng tôi muốn các bn nm bn cht ca
ajax nên trong bài này chúng ta s code thun javascript 100% nhé.
2. Viết chương trình Ajax Javascript
Chúng ta viết một chương trình đơn giản đó lấy ni dung tr v ca mt file
PHP, các bước thc hiện như sau:
Tạo file index.php để x lý ajax
Các bn to mt project và to mt file index.php vi nội dung như sau:
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8">
<script language="javascript">
function load_ajax(){
alert('Clicked');
}
</script>
</head>
<body>
<div id="result">
Nội dung ajax sẽ được load ở đây
</div>
<input type="button" name="clickme" id="clickme"
onclick="load_ajax()" value="Click Me"/>
</body>
</html>
Trong đó tôi đã to mt th div dùng đ cha ni dung load ajax, mt button
trong đó có sự kin onclick, s kin này s gọi đến hàm load_ajax. Các bn test th