Tải bản đầy đủ (.doc) (91 trang)

tìm hiểu và xây dựng ứng dụng facebook

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.3 MB, 91 trang )

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI TP. HCM
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG
NGUYỄN BÁ THÀNH CHƯƠNG - 0851120009
LÝ XUÂN TRƯỜNG - 0851120061
TÌM HIỂU VÀ XÂY DỰNG ỨNG DỤNG TRÊN
FACEBOOK
KHÓA LUẬN TỐT NGHIỆP KỸ SƯ CNTT
GIÁO VIÊN HƯỚNG DẪN
ThS ĐẶNG NHÂN CÁCH


NIÊN KHÓA 2008 - 2012
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN




































i












Ngày …… tháng …… năm 2012
Giáo viên hướng dẫn
ThS Đặng Nhân Cách
NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN











ii




































iii
Ngày …… tháng …… năm 2012
Giáo viên phản biện
Thầy:
iv
v
LỜI CÁM ƠN
Sau gần ba tháng cố gắng thực hiện đề tài “TÌM HIỂU VÀ XÂY DỰNG
ỨNG DỤNG TRÊN FACEBOOK”. Ngoài sự cố gắng hết mình của chúng tôi,

chúng tôi còn nhận được sự khích lệ, động viên rất nhiều từ phía nhà trường, thầy
cô, bạn bè và gia đình.
Trước hết chúng tôi xin cám ơn quý thầy cô Trường Đại Học Giao Thông
Vận Tải Thành Phố Hồ Chí Minh đã truyền đạt những kiến thức quý báu trong suốt
quá trình học tập phục vụ cho việc nghiên cứu đề tài. Đặc biệt, chúng tôi xin bày tỏ
lòng biết ơn chân thành sâu sắc nhất đến Thầy Đặng Nhân Cách, người đã tận tình
hướng dẫn và giúp đỡ chúng tôi trong suốt thời gian thực hiện đề tài này.
Xin cảm ơn tất cả các bạn bè đã và đang giúp đỡ động viên chúng tôi trong
quá trình học tập và hoàn thành đề tài này. Những lời cám ơn sau cùng xin dành cho
ba mẹ và các anh em trong gia đình đã hết lòng quan tâm và tạo điều kiện tốt nhất
để chúng tôi hoàn thành tốt được khóa luận tốt nghiêp này.
Mặc dù đã cố gắng hết sức để hoàn thành đề tài này nhưng chắc chắn sẽ
không tránh khỏi những sai sót. Chúng tôi rất mong nhận được sự thông cảm và
đóng góp, chỉ bảo tận tình của quý thầy cô và bạn bè.
TP Hồ Chí Minh - 2012
Sinh viên thực hiện
Nguyễn Bá Thành Chương – Lý Xuân Trường
iii
Khoa Công Nghệ Thông Tin
Bộ Môn Mạng Máy Tính và Truyền Thông
Đề Cương Chi Tiết
Tên đề tài: TÌM HIỂU VÀ XÂY DỰNG ỨNG DỤNG FACEBOOK
Giáo Viên Hướng Dẫn: Thầy Đặng Nhân Cách
Thời gian thực hiện: 24/09/2012 đến 20/12/2012
Sinh viên thực hiện: Nguyễn Bá Thành Chương - 0851120009
Lý Xuân Trường - 0851120061
Loại đề tài: Xây dựng ứng dụng ( có demo minh họa)
Nội Dung Đề Tài:
Chương 1:
- Giới thiệu bối cảnh, phạm vi, mục tiêu và cấu trúc của đề tài

Chương 2:
- Nghiên cứu tổng quan về Facebook, cách đăng ký và tạo một ứng dụng.
- Tìm hiểu các API của Facebook: Graph API, Open Graph, Access token,
json, FQL ….
- Tìm hiểu các Dialog.
Chương 3:
- Chương này sẽ trình bày chi tiết cách thiết kế và xây dựng ứng dụng: tổng
quan về ứng dụng, phân tích và thiết kế layout, tạo cơ sở dữ liệu, viết code
ứng dụng.
Chương 4:
- Đánh giá và kiểm tra các chức năng của ứng dụng.
Chương 5:
- Nêu những mặt hạn chế của đề tài, các mặt đã đạt được và rút ra kết luận,
nêu phương án phát triển cho đề tài
Yêu cầu: Xây dựng được một ứng dụng minh họa sử dụng các phương thức trên để
thiết lập.
Phương pháp thực hiện: sử dụng ngôn ngữ lập trình PHP, cơ sở dữ liệu MySQL và
iv
một số actionscript khác để xây dựng một ứng dụng hoàn chỉnh.
Kết quả đạt được : xây dựng được một ứng dụng hoàn chỉnh, nắm được các bước
tạo một ứng dụng Facebook, cách kết nối và các API, dialog của Facebook…
Kế hoạch Thực hiện: Đề tài được hoàn thành trong 12 tuần
Tuần Nội Dung Người thực hiện
1 Lập kế hoạch thực hiện đề tài, tìm tài
liệu
Thành Chương, Xuân Trường
2 Lập kế hoạch thực hiện đề tài, tìm tài
liệu
Thành Chương, Xuân Trường
3 Xem tài liệu Thành Chương, Xuân Trường

4 Thiết kế giao diện và chức năng ứng
dụng demo
Thành Chương, Xuân Trường
5 Xây dựng ứng dụng Xuân Trường
6 Chỉnh sửa ứng dụng Xuân Trường
7 Viết báo cáo luận văn chương 1 Thành Chương
8 Viết báo cáo luận văn chương 2 Xuân Trường
9 Viết báo cáo luận văn chương 3 Thành Chương
10 Viết báo cáo luận văn chương 4,5 Thành Chương
11 Chỉnh sửa báo cáo Thành Chương, Xuân Trường
12 Chỉnh sửa báo cáo Thành Chương, Xuân Trường
Xác nhận của GVHD
Ngày……tháng……năm……
SV Thực hiện:
Nguyễn Bá Thành Chương
Lý Xuân Trường

MỤC LỤC
TR NG I H C GIAO THÔNG V N T I TP. HCMƯỜ ĐẠ Ọ Ậ Ả i
NH N XÉT C A GIÁO VIÊN H NG D NẬ Ủ ƯỚ Ẫ i
NH N XÉT C A GIÁO VIÊN PH N BI NẬ Ủ Ả Ệ ii
L I CÁM NỜ Ơ iii
M C L CỤ Ụ v
M C L C HÌNH NHỤ Ụ Ả ix
v
TÓM T T KHÓA LU NẮ Ậ xiv
CH NG 1: T NG QUANƯƠ Ổ 1
CH NG 2: C S LÝ THUY TƯƠ Ơ Ở Ế 3
Hình 2.1: FBML 5
Hình 2.2: Iframes 5

Hình 2.3 : Create new app 6
Hình 2.4: t tên appĐặ 7
Hình 2.5: i n mã xác nh nĐ ề ậ 7
Hình 2.9: getLoginUrl () 8
Hình 2.10: Cú pháp c p quy nấ ề 9
Hình 2.11: L y thông tin ngày sinhấ 9
Hình 2.12: D li u ki u JSONữ ệ ể 15
Hình 2.13: i t ng trong JSONĐố ượ 15
Hình 2.14: M ng trong JSONả 16
Hình 2.15: JSON s d ng cú pháp Javascriptử ụ 16
Hình 2.16: Truy xu t đ i t ng đ u tiênấ ố ượ ầ 16
Hình 2.17: T o m ng d li u $sarrayPhpạ ả ữ ệ 17
Hình 2.18: K t qu encodeế ả 17
Hình 2.19: Ví d Decodeụ 17
Hình 2.20: K t qu Decodeế ả 17
Hình 2.21: Access token 18
Hình 2.24: K t qu tr vế ả ả ề 19
Hình 2.25: Cú pháp file_get_content 19
Hình 2.26: Ví d dùng file_get_contentụ 19
Hình 2.27: Chuy n đ i JSON v ARRAYể ổ ề 20
Hình 2.28: Ví d dùng Graph APIụ 20
Hình 2.29: K t qu dùng Graph APIế ả 20
Hình 2.30: Cú pháp truy xu t đ i t ng không là photoấ ố ượ 20
Hình 2.31: Truy xu t hình nh dùng tham s typeấ ả ố 21
Hình 2.32: S d ng typeử ụ 21
Hình 2.33: Hàm l y nh vấ ả ề 21
Hình 2.34: Hàm l u nh l y vư ả ấ ề 21
vi
Hình 2.35: Ví d l u nh l y vụ ư ả ấ ề 21
Hình 2.36: Cú pháp truy xu t đ i t ng là photoấ ố ượ 22

Hình 2.37: Ví d truy xu t hình nhụ ấ ả 22
Hình 2.38: K t qu truy xu t hình nhế ả ấ ả 22
Hình 2.39: Cú pháp access_token 23
Hình 2.40: Ví d access_tokenụ 23
Hình 2.41: K t qu truy xu t access_tokenế ả ấ 23
Hình 2.42: Truy xu t m r ngấ ở ộ 24
Hình 2.43: Truy xu t danh sách friend userấ 25
Hình 2.44: L i truy xu t danh sách friend userỗ ấ 25
Hình 2.45: Cú pháp Profile feed 25
Hình 2.46: K t qu tr v Profile Feedế ả ả ề 26
Hình 2.47: Cú pháp gi i h n Fieldớ ạ 26
Hình 2.48: Ví d gi i h n Fieldụ ớ ạ 26
Hình 2.49: K t qu gi i h n Fieldsế ả ớ ạ 27
Hình 2.50: Cú pháp gi i h n recordớ ạ 27
Hình 2.51: Ví d gi i h n recordụ ớ ạ 27
Hình 2.52: K t qu gi i h n recordsế ả ớ ạ 27
Hình 2.53: Cú pháp gi i h n record dùng offsetớ ạ 28
Hình 2.54: Ví d gi i h n record dùng offsetụ ớ ạ 28
Hình 2.55: K t qu gi i h n records dùng offsetế ả ớ ạ 28
Hình 2.56: Cú pháp l y thông tin nhi u đ i t ngấ ề ố ượ 28
Hình 2.57: Ví d l y thông tin nhi u đ i t ngụ ấ ề ố ượ 28
Hình 2.58: K t qu l y thông tin nhi u đ i t ngế ả ấ ề ố ượ 29
Hình 2.59: K t qu l y thông tin dùng URLế ả ấ 29
Hình 2.60: URL CocaCola 29
Hình 2.61: Cú pháp truy v n FQLấ 32
Hình 2.62: Cú pháp truy v n FQL có đi u ki nấ ề ệ 32
Hình 2.63: L y thông tin ng i dùngấ ườ 33
Hình 2.64: K t qu ví d 1ế ả ụ 33
Hình 2.65: L y danh sách friend ng i dùngấ ườ 33
Hình 2.66: K t qu ví d 2ế ả ụ 34

vii
Hình 2.67: L y thông tin cá nhân friend ng i dùngấ ườ 34
Hình 2.68: K t qu ví d 3ế ả ụ 34
Hình 2.69: L y k t qu limit và randomấ ế ả 35
Hình 2.70: K t qu ví d 4 l n 1ế ả ụ ầ 35
Hình 2.71: K t qu ví d 4 l n 2ế ả ụ ầ 36
Hình 2.72: Feed dialog 38
Hình 2.73: ng d n đ n file JsĐườ ẫ ế 38
Hình 2.74: Khai báo th vi n SDKư ệ 39
Hình 2.75: Khai báo g i các APIọ 39
Hình 2.76: Liên k t đính kèmế 39
Hình 2.77: Ph ng th c Dialog Feedươ ứ 39
Hình 2.78: K t qu Feed Dialogế ả 40
Hình 2.79: K t qu Oauth Dialogế ả 41
Hình 2.80: ADD Page Tab Dialog 43
Hình 2.81: Friends Dialog 44
Hình 2.82: Request Dialog 46
Hình 2.83: Sendrequest via recipients 47
Hình 2.84: Send Dialog 49
Hình 2.85: Thông báo Send Dialog 50
CH NG 3: XÂY D NG NG D NGƯƠ Ự Ứ Ụ 50
Hình 3.1: table sanpham 53
Hình 3.2: Table user 54
Hình 3.3: Giao di n trang ch - topệ ủ 54
Hình 3.4: Giao di n trang ch - footerệ ủ 55
Hình 3.5: Giao di n trang chi ti t s n ph mệ ế ả ẩ 56
Hình 3.6: Giao di n trang đ ng s n ph mệ ă ả ẩ 57
Hình 3.7: Trang liên hệ 58
Hình 3.8: Trang qu n trả ị 58
Hình 3.9: Qu n lý ng i dùngả ườ 59

Hình 3.10: SDK Facebook 59
Hình 3.11: Liên k t ng d ng v i Facebookế ứ ụ ớ 60
Hình 3.12: getUser() 60
viii
Hình 3.13: Chuy n h ng ng i dùngể ướ ườ 61
Hình 3.14: Các quy n c a tham s $paramsề ủ ố 61
Hình 3.15: G i hàm apiọ 61
Hình 3.16: G i hàm api trong ng d ngọ ứ ụ 62
Hình 3.17: api(‘/me’) 62
Hình 3.18: Code truy xu t và l u tr thông tin ng i dùngấ ư ữ ườ 62
Hình 3.19: K t n i c s d li uế ố ơ ở ữ ệ 62
Hình 3.20: Ki m tra like fanpageể 63
Hình 3.21: Chèn plugin và Dialog 63
Hình 3.22: Plugin Like box 63
Hình 3.23: Code chèn plugin Likebox 64
Hình 3.24: Plugin Like 64
Hình 3.25: Code chèn plugin like 64
Hình 3.26: Plugin comment 65
Hình 3.27: Chèn plugin comment 65
Hình 3.28: Dialog share 65
Hình 3.29: Code dialog share 65
CH NG 4: KI M TRA VÀ ÁNH GIÁƯƠ Ể Đ 66
CH NG 5: K T LU NƯƠ Ế Ậ 68
TÀI LI U THAM KH OỆ Ả 72
MỤC LỤC HÌNH ẢNH
TR NG I H C GIAO THÔNG V N T I TP. HCMƯỜ ĐẠ Ọ Ậ Ả i
NH N XÉT C A GIÁO VIÊN H NG D NẬ Ủ ƯỚ Ẫ i
NH N XÉT C A GIÁO VIÊN PH N BI NẬ Ủ Ả Ệ ii
L I CÁM NỜ Ơ iii
M C L CỤ Ụ v

M C L C HÌNH NHỤ Ụ Ả ix
TÓM T T KHÓA LU NẮ Ậ xiv
CH NG 1: T NG QUANƯƠ Ổ 1
ix
CH NG 2: C S LÝ THUY TƯƠ Ơ Ở Ế 3
Hình 2.1: FBML 5
Hình 2.2: Iframes 5
Hình 2.3 : Create new app 6
Hình 2.4: t tên appĐặ 7
Hình 2.5: i n mã xác nh nĐ ề ậ 7
Hình 2.9: getLoginUrl () 8
Hình 2.10: Cú pháp c p quy nấ ề 9
Hình 2.11: L y thông tin ngày sinhấ 9
Hình 2.12: D li u ki u JSONữ ệ ể 15
Hình 2.13: i t ng trong JSONĐố ượ 15
Hình 2.14: M ng trong JSONả 16
Hình 2.15: JSON s d ng cú pháp Javascriptử ụ 16
Hình 2.16: Truy xu t đ i t ng đ u tiênấ ố ượ ầ 16
Hình 2.17: T o m ng d li u $sarrayPhpạ ả ữ ệ 17
Hình 2.18: K t qu encodeế ả 17
Hình 2.19: Ví d Decodeụ 17
Hình 2.20: K t qu Decodeế ả 17
Hình 2.21: Access token 18
Hình 2.24: K t qu tr vế ả ả ề 19
Hình 2.25: Cú pháp file_get_content 19
Hình 2.26: Ví d dùng file_get_contentụ 19
Hình 2.27: Chuy n đ i JSON v ARRAYể ổ ề 20
Hình 2.28: Ví d dùng Graph APIụ 20
Hình 2.29: K t qu dùng Graph APIế ả 20
Hình 2.30: Cú pháp truy xu t đ i t ng không là photoấ ố ượ 20

Hình 2.31: Truy xu t hình nh dùng tham s typeấ ả ố 21
Hình 2.32: S d ng typeử ụ 21
Hình 2.33: Hàm l y nh vấ ả ề 21
Hình 2.34: Hàm l u nh l y vư ả ấ ề 21
Hình 2.35: Ví d l u nh l y vụ ư ả ấ ề 21
Hình 2.36: Cú pháp truy xu t đ i t ng là photoấ ố ượ 22
x
Hình 2.37: Ví d truy xu t hình nhụ ấ ả 22
Hình 2.38: K t qu truy xu t hình nhế ả ấ ả 22
Hình 2.39: Cú pháp access_token 23
Hình 2.40: Ví d access_tokenụ 23
Hình 2.41: K t qu truy xu t access_tokenế ả ấ 23
Hình 2.42: Truy xu t m r ngấ ở ộ 24
Hình 2.43: Truy xu t danh sách friend userấ 25
Hình 2.44: L i truy xu t danh sách friend userỗ ấ 25
Hình 2.45: Cú pháp Profile feed 25
Hình 2.46: K t qu tr v Profile Feedế ả ả ề 26
Hình 2.47: Cú pháp gi i h n Fieldớ ạ 26
Hình 2.48: Ví d gi i h n Fieldụ ớ ạ 26
Hình 2.49: K t qu gi i h n Fieldsế ả ớ ạ 27
Hình 2.50: Cú pháp gi i h n recordớ ạ 27
Hình 2.51: Ví d gi i h n recordụ ớ ạ 27
Hình 2.52: K t qu gi i h n recordsế ả ớ ạ 27
Hình 2.53: Cú pháp gi i h n record dùng offsetớ ạ 28
Hình 2.54: Ví d gi i h n record dùng offsetụ ớ ạ 28
Hình 2.55: K t qu gi i h n records dùng offsetế ả ớ ạ 28
Hình 2.56: Cú pháp l y thông tin nhi u đ i t ngấ ề ố ượ 28
Hình 2.57: Ví d l y thông tin nhi u đ i t ngụ ấ ề ố ượ 28
Hình 2.58: K t qu l y thông tin nhi u đ i t ngế ả ấ ề ố ượ 29
Hình 2.59: K t qu l y thông tin dùng URLế ả ấ 29

Hình 2.60: URL CocaCola 29
Hình 2.61: Cú pháp truy v n FQLấ 32
Hình 2.62: Cú pháp truy v n FQL có đi u ki nấ ề ệ 32
Hình 2.63: L y thông tin ng i dùngấ ườ 33
Hình 2.64: K t qu ví d 1ế ả ụ 33
Hình 2.65: L y danh sách friend ng i dùngấ ườ 33
Hình 2.66: K t qu ví d 2ế ả ụ 34
Hình 2.67: L y thông tin cá nhân friend ng i dùngấ ườ 34
Hình 2.68: K t qu ví d 3ế ả ụ 34
xi
Hình 2.69: L y k t qu limit và randomấ ế ả 35
Hình 2.70: K t qu ví d 4 l n 1ế ả ụ ầ 35
Hình 2.71: K t qu ví d 4 l n 2ế ả ụ ầ 36
Hình 2.72: Feed dialog 38
Hình 2.73: ng d n đ n file JsĐườ ẫ ế 38
Hình 2.74: Khai báo th vi n SDKư ệ 39
Hình 2.75: Khai báo g i các APIọ 39
Hình 2.76: Liên k t đính kèmế 39
Hình 2.77: Ph ng th c Dialog Feedươ ứ 39
Hình 2.78: K t qu Feed Dialogế ả 40
Hình 2.79: K t qu Oauth Dialogế ả 41
Hình 2.80: ADD Page Tab Dialog 43
Hình 2.81: Friends Dialog 44
Hình 2.82: Request Dialog 46
Hình 2.83: Sendrequest via recipients 47
Hình 2.84: Send Dialog 49
Hình 2.85: Thông báo Send Dialog 50
CH NG 3: XÂY D NG NG D NGƯƠ Ự Ứ Ụ 50
Hình 3.1: table sanpham 53
Hình 3.2: Table user 54

Hình 3.3: Giao di n trang ch - topệ ủ 54
Hình 3.4: Giao di n trang ch - footerệ ủ 55
Hình 3.5: Giao di n trang chi ti t s n ph mệ ế ả ẩ 56
Hình 3.6: Giao di n trang đ ng s n ph mệ ă ả ẩ 57
Hình 3.7: Trang liên hệ 58
Hình 3.8: Trang qu n trả ị 58
Hình 3.9: Qu n lý ng i dùngả ườ 59
Hình 3.10: SDK Facebook 59
Hình 3.11: Liên k t ng d ng v i Facebookế ứ ụ ớ 60
Hình 3.12: getUser() 60
Hình 3.13: Chuy n h ng ng i dùngể ướ ườ 61
Hình 3.14: Các quy n c a tham s $paramsề ủ ố 61
xii
Hình 3.15: G i hàm apiọ 61
Hình 3.16: G i hàm api trong ng d ngọ ứ ụ 62
Hình 3.17: api(‘/me’) 62
Hình 3.18: Code truy xu t và l u tr thông tin ng i dùngấ ư ữ ườ 62
Hình 3.19: K t n i c s d li uế ố ơ ở ữ ệ 62
Hình 3.20: Ki m tra like fanpageể 63
Hình 3.21: Chèn plugin và Dialog 63
Hình 3.22: Plugin Like box 63
Hình 3.23: Code chèn plugin Likebox 64
Hình 3.24: Plugin Like 64
Hình 3.25: Code chèn plugin like 64
Hình 3.26: Plugin comment 65
Hình 3.27: Chèn plugin comment 65
Hình 3.28: Dialog share 65
Hình 3.29: Code dialog share 65
CH NG 4: KI M TRA VÀ ÁNH GIÁƯƠ Ể Đ 66
CH NG 5: K T LU NƯƠ Ế Ậ 68

TÀI LI U THAM KH OỆ Ả 72
xiii
TÓM TẮT KHÓA LUẬN
Ngày nay, nền kinh tế đang trên đà tăng trưởng mạnh cùng với nó là sự tiến bộ
vượt bậc của công nghệ thông tin, của mạng internet.
Với tình hình phát triển như hiện nay thì bất cứ một cơ quan, tổ chức hay cá
nhân nào cũng cần quảng bá thương hiệu của mình đến với mọi người một cách
nhanh và hiệu quả nhất.
Mạng xã hội Facebook cũng là một cách để các doanh nghiệp sử dụng để tăng
hiệu quả quảng bá thương hiệu. Facebook hiện đang được sử dụng rộng rãi trên
toàn thế giới với số lượng người dùng đông đảo nên việc tận dụng các tài nguyên
sẵn có của Facebook sẽ mang đến một số thuận lợi nhất định. Do đó chúng tôi chọn
đề tài này để nghiên cứu cho việc quảng bá một thương hiệu hay cá nhân nào đó.
Trên thực tế việc gì cũng có mặt tốt mặt xấu. Và sử dụng Facebook cũng không
ngoại lệ. Vì vậy, trong luận văn này chúng tôi sẽ trình bày về cách thức xây dựng
một ứng dụng trên Facebook cho mục đích thương mại, tập trung vào việc nghiên
cứu cách thức hoạt động của một ứng dụng Facebook, cách nó tận dụng tài nguyên
từ người dùng, xây dựng một ứng dụng hoàn chỉnh phù hợp, dễ sử dụng với mọi
người.
Đề tài tìm hiểu về cách xây dựng một ứng dụng trên Facebook, cách thức cấu
tạo và cấu hình ứng dụng, cách liên kết giữa ứng dụng và Facebook dựa trên các
API của Facebook. Để việc xây dựng đạt được hiệu quả, đề tài đã sử dụng một số
tài nguyên như:
 Các plugin Facebook
 Thư viện SDK PHP
 Open Graph
 Permissons Facebook
 Cơ sở dữ liệu FQL
Các kết quả đạt được:
xiv

 Hiểu được cách liên kết của một ứng dụng với Facebook.
 Xây dựng được một ứng dụng hoàn chỉnh cho phép người dùng truy
cập và sử dụng.
 Ứng dụng có cấu trúc như một trang web cho phép người dùng đăng
sản phẩm mình muốn bán (gồm thông tin sản phẩm, giá cả và cách
thức giao hàng). Người đăng phải đăng nhập vào Facebook mới có thể
đăng được bài do đó ứng dụng tận dụng được thông tin người dùng có
sẵn trên Facebook.
 Biết được cách một ứng dụng lấy được thông tin người dùng thông
qua các hàm có sẵn của Facebook.
xv
CHƯƠNG 1: TỔNG QUAN
1.1. Giới thiệu
Nền công nghệ thông tin trên thế giới đang phát triển với tốc độ nhanh chóng.
Ngày càng nhiều sản phẩm và nhiều tiện ích được phát triển và đưa đến tay người
dùng. Các công nghệ cũ dần dần đã thể hiện nhiều mặt hạn chế và không phù hợp
với nhu cầu thực tiễn nữa, đặc biệt trong thời buổi kinh tế phát triển không ổn định
như lúc này, các doanh nghiệp phải đối mặt với nhiều rủi ro. Do đó yêu cầu nhất
thiết được đặt ra là tìm mọi cách để giảm thiểu các chi phí có thể mà vẫn có thề
quảng bá được thương hiệu và sản phẩm đến người dùng. Trong lĩnh vực công nghệ
thông tin thì mạng xã hội Facebook là một giải pháp lý tưởng cho các doanh nghiệp
có thể giải quyết bài toán về việc quảng bá thương hiệu với khả năng lan truyền
nhanh chóng qua internet.
Facebook tận dụng tối đa tài nguyên mạng internet, cứ một người biết thì sẽ
giới thiệu đến bạn của mình và cứ thế, số lượng người sẽ gia tăng nhanh chóng. Vấn
đề khó khăn của việc dùng Facebook này chính khi nhà mạng chặn thì sẽ không thể
truy cập được vào Facebook, tốc độ truy cập có thể bị chậm vì đường truyền.
Tại Việt Nam, các ứng dụng Facebook đã xuất hiện rất nhiều nhưng phần lớn
mang tính chất giải trí, chưa có nhiều doanh nghiệp thấy được nhu cầu cần thiết và
nắm được lợi thế của mạng xã hội.

1.2. Mục tiêu
Việc ra đời của mạng xã hội đã dẫn đến những động lực phát triển và các mục
tiêu mới cho các nhà phát triển ứng dụng cho phù hợp với nhu cầu thực tiễn hiện
nay.
Mục tiêu của luận văn là nghiên cứu về mạng xã hội Facebook nhằm xây dựng
một ứng dụng chạy trên nền Facebook. Từ đó có thể cho thấy lợi ích của việc tận
dụng tài nguyên sẵn có của một mạng xã hội để quảng bá một thương hiệu nào đó.
1
1.3. Phạm vi đồ án
- Nghiên cứu tìm hiểu những vấn đề về xây dựng ứng dụng trên facebook
- Tìm hiểu các phương pháp xây dựng ứng dụng
- Triển khai demo thực tế một ứng dụng facebook
- Sử dụng ngôn ngữ lập trình PHP, Javascript…
1.4. Cấu trúc đồ án
Chương 1: TỔNG QUAN
Chương này sẽ giới thiệu bối cảnh của nền khoa học công nghệ hiện nay, những
hạn chế và lãng phí khi vẫn áp dụng mô hình truyền thống vào để quảng cáo đến
người dùng và nhiệm vụ của đồ án để giải quyết vấn đề này.
Chương 2: CƠ SỞ LÝ THUYẾT
- Nghiên cứu tổng quan về Facebook, cách đăng ký và tạo một ứng dụng.
- Tìm hiểu các API của Facebook: Graph API, Open Graph, Access token,
json, FQL ….
- Tìm hiểu các Dialog.
Chương 3: XÂY DỰNG ỨNG DỤNG
Chương này sẽ trình bày chi tiết cách thiết kế và xây dựng ứng dụng: gồm có
thiết kế layout, tạo cơ sở dữ liệu, viết code ứng dụng.
Chương 4: KẾT LUẬN
Đánh giá rút ra kết luận những mặt đạt được, những mặt chưa đạt được sau đó
đề xuất ra phương án phát triển cho đề tài.
2

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1. Giới thiệu
2.1.1. Tổng quan về Facebook
Facebook là một website mạng xã hội truy cập miễn phí do công ty Facebook,
điều hành. Người dùng có thể tham gia các mạng lưới được tổ chức theo thành phố,
nơi làm việc, trường học và khu vực để liên kết và giao tiếp với người khác. Mọi
người cũng có thể kết bạn và gửi tin nhắn cho họ, và cập nhật trang hồ sơ cá nhân
của mình để thông báo cho bạn bè biết về chúng. Tên của website nhắc tới những
cuốn sổ lưu niệm dùng để ghi tên những thành viên của cộng đồng campus mà một
số trường đại học và cao đẳng tại Mỹ đưa cho các sinh viên mới vào trường, phòng
ban, và nhân viên để có thể làm quen với nhau tại khuôn viên trường.
Mark Zuckerberg thành lập Facebook cùng với bạn bè là sinh viên khoa khoa
học máy tính và bạn cùng phòng Eduardo Saverin, Dustin Moskovitz và Chris
Hughes khi Mark còn là sinh viên tại Đại học Harvard.
Việc đăng ký thành viên website ban đầu chỉ giới hạn cho những sinh viên
Harvard, nhưng đã được mở rộng sang các trường đại học khác tại khu
vực Boston, Ivy Leaguage và Đại học Stanford. Sau đó nó được mở rộng hơn nữa
cho sinh viên thuộc bất kỳ trường đại học nào, rồi đến học sinh phổ thông và cuối
cùng là bất cứ ai trên 13 tuổi. Website hiện có hơn 500 triệu thành viên tích cực trên
khắp thế giới. Với con số ấy, Facebook là mạng xã hội phổ biến nhất, tiếp theo sau
là Myspace và Twitter.
Facebook đã gặp phải một số tranh cãi trong những năm qua.Nó đã bị cấm một
thời gian tại một số quốc gia, trong đó có Syria, Trung Quốc, Việt Nam và Iran. Nó
cũng đã bị cấm tại nhiều công sở để hạn chế nhân viên tốn thời gian sử dụng dịch
vụ. Quyền riêng tư trên Facebook cũng là một vấn đề gây nhiều tranh cãi. Trang
này cũng đang đối mặt với một số vụ kiện từ một số bạn cùng lớp của Zuckerberg,
những người cho rằng Facebook đã ăn cắp mã nguồn và các tài sản trí tuệ khác của
họ.
3
2.1.2. Các thành phần cơ bản quan trọng của App Facebook

• API: gọi hàm, lấy dữ liệu trả về từ Facebook.
• FBML: Facebook Markup Language, ngôn ngữ mô tả của Facebook, khi
ứng dụng trả về FBML, đi qua Proxy của Facebook, các thẻ fbml sẽ được
render để trả về HTML thực cho User.
• XFBML: một mở rộng của FBML, sử dụng javascript để render FBML trên
trình duyệt của User, không đi qua proxy.
• FQL: Facebook Query Language, lấy dữ liệu sử dụng dạng ngôn ngữ tựa
như SQL query, không cần dùng API. Giảm tải lời gọi API, chỉ lấy những gì
cần, tránh dùng nhiều round trip (nhiều lần gọi API) để lấy thông tin (cách
dùng tương tự như gọi API vì nó là một hàm API mà, bạn gọi API fql.query
với tham số là query của bạn).
• FBJS: Facebook javascript.
• Canvas Page: là nơi hiển thị chính của ứng dụng, là nơi cho user tương tác
với App của bạn.
• Profile Box: ứng dụng của bạn có thể được hiển thị trên trang Profile của
user.
• Application Menu: menu nhỏ bên dưới góc phải, tương tự như menu Start
của Windows.
2.1.3. Các cách tạo App Facebook
Có 2 cách để tạo một ứng dụng facebook:
2.1.3.1. Dùng FBML (Facebook Markup Language)
- Dựng trang nhanh, dễ, dùng thẻ của facebook. Thể hiện các thành phần cơ
bản của Facebook rất đơn giản (chỉ cần ghi thẻ tương ứng là xong).
- URL và kiểm tra xác thực đơn giản.
4
Hình 2.1: FBML
2.1.3.2. Dùng Iframes
Hình 2.2: Iframes
- Linh hoạt vì bản chất là User tương tác với trực tiếp với trang nằm trên
hosting của mình.

- Chuyển các ứng dụng có sẵn sang dạng Facebook dễ dàng.
- Nhanh hơn khi sử dụng, User xem trang không cần qua Proxy của FB để
render các thẻ.
- Sử dụng JavaScript, HTML, CSS của mình.
- Chạy ajax nhanh hơn do user chạy trực tiếp trang của mình (không qua
proxy).
- Debug dễ hơn (vì mã HTML và Js là nguyên bản), vẫn chỉnh được kích
thước (auto resize), không ngại bị scrollbar (dùng thêm js của Facebook
trong iframe).
5
2.1.3.3. Kết luận
- Nên xài iframe do không phải tái nạp các thành phần topbar, appbar và
chatbar của Facebook nhưng vẫn tận dụng được tốt FBML nếu dùng
XFBML.
- JS của facebook sẽ scan DOM và render lại các thẻ fb trên chính trình duyệt,
bớt được các vòng roundtrip trên app server của mình.
- Trích xuất được URL trong iframe của chính mình ra trang facebook
container (dùng js của facebook trong iframe của mình).
- Nếu đang dùng iframe, có thể chuyển trang thành dạng FBML, sử dụng
fb_force_mode.
- Có thể dùng HTML đánh dấu và dùng javascript lib của Facebook để có khả
năng hiển thị tương tự FBML.
2.2. Đăng ký ứng dụng trên Facebook
- Bước 1: Tạo tài trang index.php với nội dung bất kỳ “abc 123”.
- Bước 2: Upload trang vừa tạo lên host và chỉ domain tới host.
- Bước 3: Truy cập login tài khoản.
- Bước 4: Truy cập chọn Create New
App.
Hình 2.3 : Create new app
- Bước 5: Đặt tên và Namespace cho ứng dụng (Namespace mặc định sẽ là số

Id của App) → Tiếp Tục.
6

×