Luận văn tốt nghiệp Xây dựng website bán coupon
Trang 1
Luận văn tốt nghiệp Xây dựng website bán coupon
LỜI CAM ĐOAN
Chúng tôi xin cam đoan, sản phẩm từ luận văn này và những gì được trình bày trong cuốn luận văn
đều do chúng tôi thực hiện, những tài liệu chúng tôi tham khảo đều được nêu rõ nguồn gốc của tài
liệu đó. Không có phần nào được sao chép một cách bất hợp pháp.
Nếu có bất cứ sai phạm nào so với lời cam kết, chúng tôi xin chịu các hình thức xử lý theo quy
định
Nhóm làm Luận Văn:
Trần Hồng Quân
Nguyễn Minh Hoàng
Trần Ngọc Hoài Phong
Trang 2
Luận văn tốt nghiệp Xây dựng website bán coupon
LỜI CẢM ƠN
Chúng tôi xin gởi lời cảm ơn chân thành đến thầy Đặng Trần Trí, giáo viên hướng dẫn đề tài luận
văn này. Cám ơn thầy đã tận tình chỉ bảo và hướng dẫn chúng tôi hoàn thành luận văn tốt nghiệp.
Chúng tôi xin gửi lời cảm ơn đến gia đình, bạn bè, những người luôn sát cánh, động viên và tạo
mọi điều kiện tốt nhất để chúng tôi có thể học tập và hoàn thành tốt được luận văn tốt nghiệp này.
Xin chân thành biết ơn sự tận tình dạy dỗ và truyền đạt kiến thức của tất cả quý thầy cô tại trường
Đại Học Bách Khoa, đặc biết là các thầy cô trong khoa Khoa Học và Kỹ Thuật Máy Tính.
Nhóm làm Luận Văn
Trần Hồng Quân
Nguyễn Minh Hoàng
Trần Ngọc Hoài Phong
Trang 3
Luận văn tốt nghiệp Xây dựng website bán coupon
MỤC LỤC
DANH MỤC HÌNH ẢNH
Trang 4
Luận văn tốt nghiệp Xây dựng website bán coupon
DANH MỤC BẢNG
1 GIỚI THIỆU ĐỀ TÀI
Khái niệm mua theo nhóm bắt nguồn từ sự thành công của trang web mua theo nhóm Groupon của
Mỹ năm 2008, Nhưng thật ra khái niệm mua theo nhóm không phải là mới và Groupon cũng không
phải là trang web đầu tiên về hình thức mua theo nhóm này. Trang web đầu tiên về mua theo nhóm
là trang Mobshop.com thành lập năm 1998.
Những trang web này cũng giống như những trang web về thương mại điện tử khác, bán điện
thoại, máy tính… cùng nhiều loại sản phẩm khác, chỉ khác một điều giá cả của các loại sản phẩm
Trang 5
Luận văn tốt nghiệp Xây dựng website bán coupon
không cố định mà “biến động”, nhà cung cấp sẽ đưa ra một khoảng thời gian nhất định, trong
khoảng thời gian đó tùy thuộc vào lượng người tham gia mua nhà cung cấp sẽ hạ giá bán xuống
những mức khác nhau, lượng người tham gia mua càng nhiều thì giá càng rẻ, cứ thế cho đến khi
thời gian mua kết thúc.
Thành công nhanh chóng của Groupon đã khơi dậy tinh thần “học hỏi” cũng nhanh không kém trên
toàn thế giới. Các website mua theo nhóm của Việt Nam cũng mọc lên như rất nhiều như:
Cungmua.com, Muachung.vn, Nhommua.com, Deal.zing.vn, Hotdeal.vn…
Vì vậy đề tài của chúng em mong muốn xây dựng một website theo mô hình của Groupon đẹp,
thân thiện, dễ sử dụng để có thể đáp ứng nhu cầu mua theo nhóm ngày càng tăng của người mua.
2 CÁC KIẾN THỨC TỔNG QUAN
2.1 Mô hình mua theo nhóm
2.1.1 Bản chất của mô hình Groupon
Nhiều người cho rằng Groupon là một hình thức phát triển của thương mại điện tử, cụ thể là mô
hình thứ 4 của thương mại điện tử - thế giới gọi tắt là B2T(Business To Team), sau B2B (Business
To Business), B2C (Business To Customer),C2C (Customer To Customer). Nhưng thật ra Groupon
là mô hình kết hợp giữa thương mại điện tử và quảng cáo. Thậm chí có thể nói, nếu Groupon bao
gồm 100 phần thì chỉ có 10 phần là thương mại điện tử. Mục đích cuối cùng của việc các trang web
Groupon không đơn thuần là bán các phiếu khuyến mãi, mà quan trọng hơn là để quảng bá thương
hiệu, quảng bá thương hiệu cho nhà cung cấp và quảng bá thương hiệu cho chính mình.
Trang 6
Luận văn tốt nghiệp Xây dựng website bán coupon
Các nhà cung cấp đồng ý đưa ra các siêu khuyến mãi, siêu giảm giá tới 60%, 70% thậm chí là trên
90%, mục đích chủ yếu là để quảng cáo, vì nếu đơn thuần chỉ là giảm giá để thu hút lượng lớn
khách hàng thì tính thế nào nhà cung cấp cũng vẫn lỗ vốn. Và hơn nữa lượng người mua càng
nhiều thì càng lỗ nặng. Nhưng, nếu coi như đây là một phương thức quảng cáo, và các chi phí
thông qua giảm giá là các chi phí dành cho quảng cáo thì lại thấy cực kỳ có lợi và cực kỳ đáng.
Nhà cung cấp nếu sử dụng các phương thức quảng cáo khác, sẽ phải chi trả chi phí lớn hơn mà
hiệu quả thì không được đảm bảo vì các phương thức quảng cáo khác không đảm bảo lượng khách
hàng sẽ tìm đến với nhà cung cấp sau thời gian quảng cáo. Còn nếu thông qua tổ chức mua theo
nhóm thì có thể chắc ăn hơn, sẽ tạo cơ hội để khách hàng đích thân tới trải nghiệm sản phẩm - dịch
vụ của chính mình.
Nếu số người mua không đạt được số người yêu cầu tối thiểu thì hoạt động mua theo nhóm đó coi
như hủy bỏ, không có khách hàng đến thì nhà cung cấp cũng chẳng mất gì, hơn nữa lại còn được
quảng cáo miễn phí trên website của các trang Groupon nữa.
2.1.2 Lợi thế của Groupon khi phát triển ở Việt Nam
• Người tiêu dùng VN rất quan tâm tới GIÁ.
• Tâm lý thích khuyến mãi: Rất nhiều người mua khi có khuyến mãi, ngay cả
khi họ không có nhu cầu, nhất là phụ nữ.
• Tâm lý đám đông ảnh hưởng mạnh đến người Việt: Yên tâm khi có nhiều
người cùng mua một lúc, mua hùa theo đám đông.
• Mua bán/giải trí là một trong những hoạt động chủ chốt của người Việt từ
offline -> online.
• Mỗi site có những lợi thế khác nhau (những lợi thế này có phân tích ở phần
sau)
2.1.3 Khó khăn của groupon khi phát triển ở Việt Nam
Có 6 lý do chính mà các website kinh doanh theo mô hình groupon sẽ gặp phải khi phát
triển ở VN:
• Hình thức thanh toán
Khách hàng -> Groupon (khách hàng trả tiền khi deal): Các phương thức
thanh toán chưa thuận lợi -> khách hàng không muốn mua/mất thời gian ->
không đủ người mua để deal hoàn tất.
Groupon -> khách hàng (hoàn tiền nếu deal không thành công): nếu deal
không thành công thì việc nhận lại tiền cũng khá phiền phức, không đơn
giản như ở Mỹ.
Chi phí cao: Do chiết khấu cho khách hàng rất cao từ 50-90% nên phần
trăm mô hình Groupon có được không thể nào lớn hơn 10%, và sẽ dao động
từ 5-10%. Trong khi đó Chi phí Groupon VN = Chi phí mô hình Groupon
Mỹ (tương đương tại VN) + chi phí thanh toán (thẻ + vận chuyển) + chi phí
marketing + chi phí sales (trong đó chi phí marketing sẽ là khoản chi lớn
nhất và tiêu tốn nhiều tiền nhất do các các site Groupon VN phải đi thuyết
phục các DN đăng quảng cáo trên site của mình)
Trang 7
Luận văn tốt nghiệp Xây dựng website bán coupon
Trừ chi phí sản phẩm + văn phòng ra, chỉ tính trong mỗi deal, xác suất chi
phí Groupon VN > 10% chiết khấu là khá cao => lỗ. Điều này chứng tỏ tại
sao Groupon thật có thể “profitable” chỉ sau hơn hai năm. Còn Groupon
clone thì phải tốn nhiều thời gian hơn.
• Dịch vụ khách hàng/thái độ phục vụ nhân viên
Ở VN khi khách hàng dùng phiếu khuyến mãi, đặc biệt ở mảng dịch vụ
thường không được nhân viên phục vụ chu đáo, thậm chí còn coi thường
khách hàng. Ngay cả dịch vụ của các thương hiệu lớn cũng đã có nhiều
trường hợp tương tự xảy ra. Dịch vụ cung cấp không được 100% như hứa
hẹn, bị cắt xén nhiều.
• Chất lượng sản phẩm/dịch vụ
Mức độ đồng đều về chất lượng sản phẩm dịch vụ không được cao như ở
Mỹ. Nếu chọn các sản phẩm có chất lượng cao thì số lượng các deal giảm sút
đáng kể.
• Hiểu biết của nhà cung cấp
Nếu như Groupon Mỹ hiện đang có hàng chục nghìn nhà cung cấp đang xếp
hàng để được quảng cáo Groupon thì ở VN các Groupon VN phải đi thuyết
phục, dụ dỗ các nhà cung cấp.
• Thương hiệu
Do Groupon là mô hình đầu tiên nên thường được báo chí, khách hàng ở
Mỹ nhớ đến và bàn tán truyền miệng -> không tốn nhiều chi phí marekting.
Còn ở VN các website chỉ là rập khuôn lại mô hình Groupon. Các DN
không biết các clone này khác nhau chỗ nào -> chi phí cho marketing và
educate khách hàng càng cao.
• Thói quen mua hàng
Người tiêu dùng VN vẫn có thói quen mua hàng phải sờ tận tay, xem tận
mắt, chưa quen với việc mua hàng qua mạng. Các DN VN chưa có thói quen sử dụng
Internet làm kênh marketing
Trong các bất lợi này, bất lợi 1 (thanh toán) và 6 (thói quen mua hàng) nắm
vai trò then chốt cho thành công của mô hình Groupon ở Việt Nam.
2.2 Thương Mại Điện Tử
Thương mại điện tử xuất hiện cùng với sự phổ cập mạng Internet và máy tính từ cuối những năm
1990 đầu những năm 2000. Thương mại điện tử được biết đến với khá nhiều tên gọi, phổ biến nhất
là Thương mại điện tử, bên cạnh đó là các tên gọi như kinh doanh điện tử, thương mại phi giấy tờ,
marketing điện tử.
2.2.1 Thương Mại Điện Tử là gì ?
Thương mại điện tử (còn gọi là E-Commerce hay E-Business) là quy trình mua bán hàng hóa và
dịch vụ thông qua các phương tiện điện tử và mạng viễn thông, đặc biệt là qua máy tính và
mạng Internet. Thương mại điện tử (Electronic Commerce), một yếu tố hợp thành của nền
"Kinh tế số hóa", là hình thái hoạt động thương mại bằng các phương pháp điện tử; là việc trao
đổi thông tin thương mại thông qua các phương tiện công nghệ điện tử mà nói chung là không
Trang 8
Luận văn tốt nghiệp Xây dựng website bán coupon
cần phải in ra giấy trong bất cứ công đoạn nào của quá trình giao dịch (nên còn gọi là "Thương
mại không có giấy tờ").
"Thông tin" trong khái niệm trên được hiểu là bất cứ gì có thể truyền tải bằng kỹ thuật điện tử,
bao gồm cả thư từ, các tệp văn bản, các cơ sở dữ liệu, các bản tính, các bản vẽ thiết kế bằng
máy tính điện tử, các hình đồ họa, quảng cáo, hỏi hàng, đơn hàng, hóa đơn, biểu giá, hợp đồng,
các mẫu đơn, các biểu mẫu, hình ảnh động, âm thanh, v.v...
"Thương mại" (commerce) trong khái niệm thương mại điện tử được hiểu (như quy định trong
"Đạo luật mẫu về thương mại điện tử" của Liên hiệp quốc) là mọi vấn đề nảy sinh ra từ mọi mối
quan hệ mang tính chất thương mại (commercial), dù có hay không có hợp đồng. Các mối quan
hệ mang tính thương mại bao gồm bất cứ giao dịch thương mại nào về cung cấp hoặc trao đổi
hàng hóa, dịch vụ; thoả thuận phân phối, đại diện hoặc đại lý thương mại; ủy thác hoa hồng, cho
thuê dài hạn; xây dựng các công trình; tư vấn; kỹ thuật công trình; đầu tư; cấp vốn; ngân hàng;
bảo hiểm; thỏa thuận khai thác hoặc tô nhượng; liên doanh và các hình thức khác về hợp tác
công nghiệp hoặc kinh doanh; chuyên chở hàng hóa hay hành khách bằng đường biển, đường
không, đường sắt, đường bộ; và v.v... Như vậy, phạm vi của thương mại điện tử (E-commerce)
rất rộng, bao quát hầu như mọi hình thái hoạt động kinh tế, mà không chỉ bao gồm buôn bán
hàng hóa và dịch vụ; buôn bán hàng hoá và dịch vụ chỉ là một trong hàng nghìn lĩnh vực áp
dụng của thương mại điện tử.
2.2.2 Các loại hình của Thương Mại Điện Tử
2.2.2.1 Business to Customer (B2C)
• Thương mại điện tử B2C hay là thương mại giữa các công ty và người tiêu dùng,
liên quan đến việc khách hàng thu thập thông tin, mua các hàng hoá thực (hữu hình
như là sách hoặc sản phẩm tiêu dùng) hoặc sản phẩm thông tin (hoặc hàng hoá về
nguyên liệu điện tử hoặc nội dung số hoá, như phần mềm, sách điện tử) và các hàng
hoá thông tin, nhận sản phẩm qua mạng điện tử.
• Đơn giản hơn chúng ta có thể hiểu :Thương mại điện tử B2C là việc một doanh
nghiệp dựa trên mạng internet để trao đổi các hang hóa dịch vụ do mình tạo ra hoặc
do mình phân phối.
• Các trang web khá thành công với hình thức này trên thế giới phải kể đến
Amazon.com, Drugstore.com, Beyond.com.
• Tại Việt Nam hình thức buôn bán này đang rất "ảm đạm" vì nhiều lý do nhưng lý do
chủ quan nhất là ý thức của các doanh nghiệp, họ không quan tâm, không để ý và
tệ nhất là không chăm sóc nổi website cho chính doanh nghiệp mình
2.2.2.2 Business to Business (B2B): e-procurement
Thương mại điện tử B2B được định nghĩa đơn giản là thương mại điện tử giữa các công
ty. Đây là loại hình thương mại điện tử gắn với mối quan hệ giữa các công ty với nhau.
Khoảng 80% thương mại điện tử theo loại hình này và phần lớn các chuyên gia dự đoán
Trang 9
Luận văn tốt nghiệp Xây dựng website bán coupon
rằng thương mại điện tử B2B sẽ tiếp tục phát triển nhanh hơn B2C. Thị trường B2B có hai
thành phần chủ yếu: hạ tầng ảo và thị trường ảo.
Hạ tầng ảo là cấu trúc của B2B chủ yếu bao gồm những vấn đề sau:
• Hậu cần - Vận tải, nhà kho và phân phối;
• Cung cấp các dịch vụ ứng dụng - tiến hành, máy chủ và quản lý phần mềm trọn gói
từ một trung tâm hỗ trợ (ví dụ Oracle và Linkshare);
• Các nguồn chức năng từ bên ngoài trong chu trình thương mại điện tử như máy chủ
trang web, bảo mật và giải pháp chăm sóc khách hàng.
• Các phần mềm giải pháp đấu giá cho việc điều hành và duy trì các hình thức đấu giá
trên Internet.
• Phần mềm quản lý nội dung cho việc hỗ trợ quản lý và đưa ra nội dung trang
Web cho phép thương mại dựa trên Web .
Phần lớn các ứng dụng B2B là trong lĩnh vực quản lý cung ứng ( Đặc biệt chu trình đặt
hàng mua hàng), quản lý kho hàng (Chu trình quản lý đặt hàng gửi hàng-vận đơn), quản
lý phân phối (đặc biệt trong việc chuyển gia các chứng từ gửi hàng) và quản lý thanh
toán (ví dụ hệ thống thanh toán điện tử hay EPS).
Thị trường mạng được định nghĩa đơn giản là những trang web nơi mà người mua
người bán trao đổi qua lại với nhau và thực hiện giao dịch.
Qua hai nội dung trên chúng ta có thể đưa ra vài nét tổng quan về các doanh nghiệp
B2B:
1. Là những nhà cung cấp hạ tầng trên mạng internet cho các doanh nghiệp khác
như máy chủ, hệ điều hành, phần mềm ứng dụng.
2. Là các doanh nghiệp chuyên cung cấp các giải pháp trên mạng internet như
cung cấp máy chủ, hosting (Dữ liệu trên mạng), tên miền, các dịch vụ thiết kế,
bảo trì, website.
3. Là các doanh nghiệp cung cấp các phần mềm quản lý doanh nghiệp, kế toán
doanh nghiệp, các phần mềm quản trị, các phần mềm ứng dụng khác cho doanh
nghiệp;
4. Các doanh nghiệp là trung gian thương mại điện tử trên mạng internet.
Tại Việt Nam các trang web về B2B rất ít xuất hiện hoặc nó bị gán nhầm cho cái tên
B2B thậm chí nhiều người không hiểu B2B là gì, cứ thấy có doanh nghiệp với doanh
nghiệp là gán cho chữ B2B.
2.2.2.3 Customer to Customer (C2C)
Thương mại điện tử khách hàng tới khách hàng C2C đơn giản là thương mại giữa các cá
nhân và người tiêu dùng.
Loại hình thương mại điện tử này được phân loại bởi sự tăng trưởng của thị trường điện tử
và đấu giá trên mạng, đặc biệt với các ngành theo trục dọc nơi các công ty/ doanh nghiệp
có thể đấu thầu cho những cái họ muốn từ các nhà cung cấp khác nhau. Có lẽ đây là tiềm
năng lớn nhất cho việc phát triển các thị trường mới.
Loại hình thương mại điện tử này tới theo ba dạng:
Trang 10
Luận văn tốt nghiệp Xây dựng website bán coupon
• Hệ thống hai đầu P2P, Forum, IRC, các phần mềm nói chuyện qua mạng như
Yahoo, Skype,Window Messenger,AOL ...
• Quảng cáo phân loại tại một cổng (rao vặt)
• Giao dịch khách hàng tới doanh nghiệp C2B bao gồm đấu giá ngược, trongđó khách
hàng là người điều khiển giao dịch.
Tại các trang web của nước ngoài chúng ta có thể nhận ra ngay Ebay là website đứng đầu
danh sách các website C2C trên thế giới đây la một tượng đài về kinh doanh theo hình thức
đấu giá mà các doanh nghiệp Việt Nam nào cũng muốn "trở thành".
Tại Việt Nam thì chứa tất các các hinh thức này ở mọi loại dạng, đi đến đâu cũng
thấy quảng cáo rao vặt, rao bán, rao mua, trao đổi....
2.2.2.4 Business to Government
Thương mại điện tử giữa doanh nghiệp với chính phủ (B2G) được định nghĩa chung là
thương mại giữa công ty và khối hành chính công. Nó bao hàm việc sử dụng Internet cho
mua bán công, thủ tục cấp phép và các hoạt động khác liên quan tới chính phủ. Hình thái
này của thương mại điện tử có hai đặc tính: thứ nhất, khu vực hành chính công có vai trò
dẫn đầu trong việc.
Thiết lập thương mại điện tử, thứ hai, người ta cho rằng khu vực này có nhu cầu lớn nhất
trong việc biến các hệ thống mua bán trở nên hiệu quả hơn.
• Các chính sách mua bán trên web tăng cường tính minh bạch của quá trình mua
hàng (và giảm rủi ro của việc không đúng quy cách). Tuy nhiên, tới nay, kích cỡ của
thị trường thương mại điện tử B2G như là một thành tố của của tổng thương mại
điện tử thì không đáng kể, khi mà hệ thống mua bán của chính phủ còn chưa phát
triển.
Một số loại hình thương mại điện tử khác:
• Thương mại điện tử M-Commerece ( Buôn bán qua các thiết bị di động cầm tay)
• Thương mại điện tử sử dụng tiền ảo ( VTC với Vcoin )
2.2.3 Thanh toán điện tử
Thanh toán điện tử là hình thức thanh toán tiến hành trên môi trường internet, thông qua hệ
thống thanh toán điện tử người sử dụng mạng có thể tiến hành các hoạt động thanh toán,
chi trả, chuyển tiền, ...
Thanh toán điện tử được sử dụng khi chủ thể tiến hành mua hàng trên các siêu thị ảo và
thanh toán qua mạng. Để thực hiện việc thanh toán, thì hệ thống máy chủ của siêu thị phải
có được phầm mềm thanh toán trong website của mình.
2.2.4 Quảng cáo trên Internet
Cũng như các hình thức quảng cáo khác, quảng cáo trên mạng nhằm cung cấp thông tin đẩy
nhanh tiến độ giao dịch giữa người bán và người mua. Tuy nhiên, quảng cao trên mạng
khác hẳn với quảng cáo trên các phương tiện thông tin đại chúng khác vì nó giúp người tiêu
dùng có thể tương tác với quảng cáo. Trên mạng mọi thứ đều có thể đưa vào quảng cáo, từ
bố trí sản phẩm tới thiết kế các ảnh nền phía sau nội dung quảng cáo, làm cho logo hoặc bất
cứ nhãn hiệu sản phẩm nào cũng trở nên nổi bật. Quảng cáo trên Internet cũng tạo cơ hội
cho các nhà quảng cáo nhắm chính xác vào đối tượng khách hàng của mình và giúp họ
quảng cáo với đúng sở thích và thị hiếu người dùng. Ngoài ra, quảng cáo trên mạng còn là
Trang 11
Luận văn tốt nghiệp Xây dựng website bán coupon
sự kết hợp của quảng cáo truyền thống và tiếp thị trực tiếp. Đó là sự kết hợp giữa cung cấp
nhãn hiệu, cung cấp thông tin và trao đổi buôn bán ở cùng một nơi.
Các hình thức quảng cáo trên Internet
• Quảng cáo bằng các banner, đường link qua các website khác
• Quảng cáo qua E-mail
• Quảng cáo trên Website
3 KIẾN THỨC NỀN TẢNG
3.1 HTML (HyperText Markup Language)
HTML (tiếng Anh, viết tắt cho HyperText Markup Language, tức là "Ngôn ngữ Đánh dấu
Siêu văn bản") là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên các trang web, nghĩa
là các mẩu thông tin được trình bày trên World Wide Web. Được định nghĩa như là một ứng
dụng đơn giản của SGML, vốn được sử dụng trong các tổ chức cần đến các yêu cầu xuất
bản phức tạp, HTML giờ đây đã trở thành một chuẩn Internet do tổ chức World Wide Web
Consortium (W3C) duy trì. Phiên bản chính thức mới nhất của nó hiện là HTML 5.
Hình HTML
VD:
<html>
<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>
</html>
Trang 12
Luận văn tốt nghiệp Xây dựng website bán coupon
- Đánh dấu:
Có bốn loại phần tử đánh dấu trong HTML:
• Đánh dấu Có cấu trúc miêu tả mục đích của phần văn bản (ví
dụ, <h1>Golf</h1> sẽ điều khiển phần mềm đọc hiển thị "Golf" là đề mục cấp
một),
• Đánh dấu trình bày miêu tả phần hiện hình trực quan của phần văn bản bất kể chức
năng của nó là gì (ví dụ, <b>boldface</b>sẽ hiển thị đoạn văn bản boldface) (Chú
ý là cách dùng đánh dấu trình bày này bây giờ không còn được khuyên dùng mà nó
được thay thế bằng cách dùng CSS).
• Đánh dấu liên kết ngoài chứa phần liên kết từ trang này đến trang kia (ví dụ, <a
href=" sẽ hiển thị từ Wikipedia như là
một liên kết ngoài đến một URL) cụ thể, và
• Các phần tử thành phần điều khiển giúp tạo ra các đối tượng (ví dụ, các nút và các
danh sách).
Tách phần trình bày và nội dung
Nỗ lực tách phần nội dung ra khỏi phần hình thức trình bày của trang HTML đã đưa
đến sự xuất hiện của các chuẩn mới như XHTML. Các chuẩn này nhấn mạnh vào việc
sử dụng thẻ đánh dấu vào việc xác định cấu trúc tài liệu như phần đề mục, đoạn văn,
khối văn bản trích dẫn và các bảng, chứ không khuyên dùng các thẻ đánh dấu mang
tính chất trình bày trực quan, như <font>, <b> (in đậm), và <i> (in nghiêng). Những mã
mang tính chất trình bày đó đã được loại bỏ khỏi HTML 4.01 Strict và các đặc tả
XHTML nhằm tạo điều kiện cho CSS. CSS cung cấp một giải pháp giúp tách cấu trúc
HTML ra khỏi phần trình bày của nội dung của nó. Xem phần tách nội dung và trình
bày.
Các phần tử cơ bản:
Heading Elements
<h1>Largest Heading</h1>
<h2> . . . </h2>
<h3> . . . </h3>
<h4> . . . </h4>
<h5> . . . </h5>
<h6>Smallest Heading</h6>
Trang 13
Luận văn tốt nghiệp Xây dựng website bán coupon
Text Elements
<p>This is a paragraph</p>
<br /> (line break)
<hr /> (horizontal rule)
<pre>This text is preformatted</pre>
Logical Styles
<em>This text is emphasized</em>
<strong>This text is strong</strong>
<code>This is some computer code</code>
Physical Styles
<b>This text is bold</b>
<i>This text is italic</i>
Links
Ordinary link: <a href=" goes
here</a>
Image-link: <a href=" src="URL"
alt="Alternate Text" /></a>
Mailto link: <a href="mailto:">Send e-mail</a>
A named anchor:
<a name="tips">Tips Section</a>
<a href="#tips">Jump to the Tips Section</a>
Unordered list
<ul>
<li>Item</li>
<li>Item</li>
</ul>
Trang 14
Luận văn tốt nghiệp Xây dựng website bán coupon
Ordered list
<ol>
<li>First item</li>
<li>Second item</li>
</ol>
Definition list
<dl>
<dt>First term</dt>
<dd>Definition</dd>
<dt>Next term</dt>
<dd>Definition</dd>
</dl>
Tables
<table border="1">
<tr>
<th>Tableheader</th>
<th>Tableheader</th>
</tr>
<tr>
<td>sometext</td>
<td>sometext</td>
</tr>
</table>
Trang 15
Luận văn tốt nghiệp Xây dựng website bán coupon
Iframe
<iframe src="demo_iframe.htm"></iframe>
Frames
<frameset cols="25%,75%">
<frame src="page1.htm" />
<frame src="page2.htm" />
</frameset>
Forms
<form action="
method="post/get">
<input type="text" name="email" size="40"
maxlength="50" />
<input type="password" />
<input type="checkbox" checked="checked" />
<input type="radio" checked="checked" />
<input type="submit" value="Send" />
<input type="reset" />
<input type="hidden" />
<select>
<option>Apples</option>
<option selected="selected">Bananas</option>
<option>Cherries</option>
</select>
<textarea name="comment" rows="60" cols="20"></textarea>
</form>
Trang 16
Luận văn tốt nghiệp Xây dựng website bán coupon
Entities
< is the same as <
> is the same as >
© is the same as ©
Other Elements
<!-- This is a comment -->
<blockquote>
Text quoted from a source.
</blockquote>
<address>
Written by W3Schools.com<br />
<a href="mailto:">Email us</a><br />
Address: Box 564, Disneyland<br />
Phone: +12 34 56 78
</address>
3.2 Cascading Style Sheets (CSS)
Được dùng để miêu tả cách trình bày các tài liệu viết bằng ngôn ngữ HTML và XHTML.
Ngoài ra ngôn ngữ định kiểu theo tầng cũng có thể dùng cho XML, SVG, XUL v.v...
3.2.1 Một số đặc tính cơ bản của CSS
CSS quy định cách hiển thị của các thẻ HTML bằng cách quy định các thuộc tính của
các thẻ đó (font chữ, màu sắc). Để cho thuận tiện thì có thể đặt toàn bộ các thuộc tính
của thẻ vào trong một file riêng có phần mở rộng là ".css"
CSS nó phá vỡ giới hạn trong thiết kế Web, bởi chỉ cần một file CSS có thể cho phép
quản lí định dạng và layout trên nhiều trang khác nhau. Các nhà phát triển Web có thể
định nghĩa sẵn thuộc tính của một số thẻ HTML nào đó và sau đó nó có thể dùng lại
trên nhiều trang khác.
Có thể khai báo CSS bằng nhiều cách khác nhau. Bạn có thể đặt đoạn CSS của bạn phía
trong thẻ <head>...</head>, hoặc ghi nó ra file riêng với phần mở rộng ".css", ngoài ra
bạn còn có thể đặt chúng trong từng thẻ HTML riêng biệt
Trang 17
Luận văn tốt nghiệp Xây dựng website bán coupon
Tuy nhiên tùy từng cách đặt khác nhau mà độ ưu tiên của nó cũng khác nhau. Mức độ
ưu tiên của CSS sẽ theo thứ tự sau.
Style đặt trong từng thẻ HTML riêng biệt
Style đặt trong phần <head>
Style đặt trong file mở rộng .css
Style mặc định của trình duyệt
Mức độ ưu tiên sẽ giảm dần từ trên xuống dưới.
CSS có tính kế thừa: giả sử rằng bạn có một thẻ <div id="vidu"> đã được khai báo ở
đầu file css với các thuộc tính như sau:
#vidu {
width: 200px;
height: 300px;
}
Ở một chỗ nào đó trong file css bạn lại khai báo một lần nữa thẻ <div id="vidu"> với
các thuộc tính.
#vidu {
width: 400px;
background-color: #CC0000;
}
Sau đoạn khai báo này thì thẻ <div id="vidu"> sẽ có thuộc tính:
#vidu {
width: 400px; /* Đè lên khai báo cũ */
height: 300px;
background-color: #CC0000;
}
Trang 18
Luận văn tốt nghiệp Xây dựng website bán coupon
3.2.2 Cú pháp của CSS
Cú pháp của CSS được chia làm 3 phần. phần thẻ chọn (selector), phần thuộc tính
(property), phần nhãn (value).
selector {property: value}
Nếu nhãn có nhiều từ thì nên đặt nhãn của vào trong dấu nháy kép
p {font-family: "sans serif"}
Trong trường hợp thẻ chọn có nhiều thuộc tính thì các thuộc tính sẽ được ngăn cách bởi dấu
(;).
p {text-align:center;color:red}
Khi thẻ chọn có nhiều thuộc tính thì chúng ta nên để mỗi thuộc tính ở trên một dòng riêng
biệt.
p {
text-align: center;
color: black;
font-family: arial
}
3.2.3 Chèn CSS vào trang Web
Khi trình duyệt đọc đến CSS, thì toàn bộ Website sẽ được định dạng theo các thuộc tính đã
được khai báo trong phần CSS. Có ba cách cho phép chúng ta chèn định dạng CSS vào
trong Website.
3.2.3.1 CSS được khai báo trong file riêng.
Toàn bộ mã CSS được chứa trong file riêng có phần mở rộng .css là một ý tưởng được
dùng khi một file CSS sẽ được áp dụng cho nhiều trang khác nhau. Bạn có thể thay đổi
cách hiển thị của toàn bộ site mà chỉ cần thay đổi một file CSS. Trong cách này thì file CSS
sẽ được chèn vào văn bản HTML thông qua thẻ <link>...</link>. Ta có cú pháp như sau:
<html>
<head>
<link rel="stylesheet" type="text/css" href="/mystyle.css"
medial="all" />
</head>
<body>
</body>
</html>
Trang 19
Luận văn tốt nghiệp Xây dựng website bán coupon
Trình duyệt sẽ đọc toàn bộ các định dạng được quy định trong file mystyle.css và định dạng
cho văn bản HTML.
File CSS có thể được soạn thảo bằng một số trình duyệt khác nhau. Trong file không được
chứa mã HTML, khi ghi lại chúng ta bắt buộc phải ghi lại với phần mở rộng là .css. Giả sử
chúng trong file mystyle.css ở trên chứa đoạn mã sau:
hr {color: sienna}
p {margin-left: 20px}
body {background-image: url("images/back40.gif")}
Không bao giờ sử dụng khoảng trắng trong nhãn, giả sử rằng nếu bạn dùng margin-left: 20
px; thay cho margin-left: 20px; thì IE6 sẽ hiểu còn các trình duyệt như Firefox, Opera sẽ
không hiểu
3.2.3.2 Chèn CSS trong tài liệu HTML
Chèn thẳng CSS trong tài liệu được áp dụng trong trường hợp những định dạng CSS này
chỉ giành riêng cho tài liệu HTML đó. Khi bạn chèn trực tiếp thì đoạn mã của bạn phải đặt
trong thẻ <style> và đặt trong phần <head>.
<head>
<style type="text/css">
hr {color: sienna}
p {margin-left: 20px}
body {background-image: url("images/back40.gif")}
</style>
</head>
Có một số trình duyệt cũ sẽ không hiểu thẻ <style>, nó sẽ bỏ qua thẻ này. Tuy nhiên thì nội
dung trong thẻ <style> vẫn hiển thị ra trang HTML. Vì vậy mà chúng ta sẽ phải dùng định
dạng chú thích trong HTML để chứa phần nội dung của thẻ <style>.
<head>
<style type="text/css">
<!--
hr {color: sienna}
p {margin-left: 20px}
body {background-image: url("images/back40.gif")}
-->
</style>
</head>
Trang 20
Luận văn tốt nghiệp Xây dựng website bán coupon
3.2.3.3 Chèn trực tiếp vào thẻ của HTML(inline style)
Inline style được sử dụng nhiều trong trường hợp một thẻ HTML nào đó cần có style riêng
cho nó.
Inline style được áp dụng cho chính thẻ HTML đó, cách này sẽ có độ ưu tiên lớn nhất so
với hai cách trên. Dưới đây là một ví dụ mà chúng ta dùng Inline style
<p style="color: sienna; margin-left: 20px">
This is a paragraph
</p>
3.2.3.4 Nhiều Stylesheet
Trong trường hợp mà có một số thẻ có cùng định dạng, chúng ta có thể gộp chúng lại với
nhau. Giả sử như sau:
h1, h2, h3 {
margin-left: 10px;
font-size: 150%;
...
}
3.3 Sơ lược về .NET framework
Trước khi tìm hiểu về ASP.NET, chúng ta sẽ tìm hiểu sơ lược về .Net Framework. Sở dĩ có
chữ .NET trong ASP.NET là vì mọi chức năng ASP.NET có được là hoàn toàn dựa vào
.NET framework, do đó ta cần phải hiểu thấu đáo kiến trúc hạ tầng của .NET framework để
dùng ASP.NET một cách hiệu quả, trong đó quan trọng nhất là CLR và .NET Framework
Class.
Trang 21
Luận văn tốt nghiệp Xây dựng website bán coupon
Hình .NET framework
3.3.1 CLR (Common Language Runtime)
CLR là môi trường được dùng để quản lý sự thi hành các nguồn mã (manage the execution
of code) mà ta đã soạn ra và biên dịch (write and compile code) trong các ứng dụng, các
phần bên trong của CLR gồm: Class loader, Just In Time compiler, Garbage collector,
Exception handler, COM marshaller, Security engine,… Khi biên dịch nguồn mã, ta biên
dịch chúng ra thành một ngôn ngữ trung gian gọi là Microsoft Intermediate Language
(MSIL). Chính MSIL trung gian này là ngôn ngữ chung cho tất cả các ngôn ngữ .NET hiện
có, do đó chắc bạn cũng đoán ra là ASP.NET cũng được biên dịch (compile) ra MSIL như
mọi ai khác. Trong khi biên dịch như vậy, các ứng dụng cũng sản xuất ra những thông tin
cần thiết để tự ... quảng cáo chính mình, ta gọi những thông tin này là metadata. Ðến khi ta
chạy một ứng dụng, CLR sẽ tiếp quản (take-over) và lại biên dịch (compile) nguồn mã một
lần nữa ra thành ngôn ngữ gốc (native language) của máy vi tính trước khi thi hành những
công tác đã được bố trí trong nguồn mã đó. Ta có thể cảm thấy những việc bận rộn sau hậu
trường đó khi phải chờ đợi 1 khoãng thời gian cần thiết để CLR chấm dứt nhiệm vụ của nó
khi lần đầu phải biên dịch (compile) và hiển thị 1 trang Web, nhưng rồi mọi chuyện sẽ xuôi
chèo mát mái, cuối cùng là ta có một trình biên dịch (compiled code) để xử dụng rất hiệu
quả.
Trang 22
Luận văn tốt nghiệp Xây dựng website bán coupon
3.3.2 DOTNET framework classes
Nếu phải giải nghĩa từ "Framework" trong thuật ngữ .NET Framework thì đây là lúc thích
hợp nhất. Framework chính là một tập hợp hay thư viện các lớp đối tượng hỗ trợ người lập
trình khi xây dựng ứng dụng. Có thể một số người trong chúng ta đã nghe qua về MFC và
JFC. Microsoft Foundation Class là bộ thư viện mà lập trình viên Visual C++ sử dụng trong
khi Java Foundation Class là bộ thư viện dành cho các lập trình viên Java. Giờ đây, có thể
coi .NET Framework là bộ thư viện dành cho các lập trình viên .NET.
Với hơn 5000 lớp đối tượng để gọi thực hiện đủ các loại dịch vụ từ hệ điều hành, chúng ta
có thể bắt đầu xây dựng ứng dụng bằng Notepad.exe!!!… Nhiều người lầm tưởng rằng các
môi trường phát triển phần mềm như Visual Studio 98 hay Visual Studio.NET là tất cả
những gì cần để viết chương trình. Thực ra, chúng là những phần mềm dùng làm "vỏ bọc"
bên ngoài. Với chúng, chúng ta sẽ viết được các đoạn lệnh đủ các màu xanh, đỏ; lỗi cú
pháp báo ngay khi đang gõ lệnh; thuộc tính của các đối tượng được đặt ngay trên cửa sổ
properties, giao diện được thiết kế theo phong cách trực quan… Như vậy, chúng ta có thể
hình dung được tầm quan trọng của .NET Framework. Nếu không có cái cốt lõi .NET
Framework, Visual Studio.NET cũng chỉ là cái vỏ bọc! Nhưng nếu không có Visual
Studio.NET, công việc của lập trình viên .NET cũng lắm bước gian nan!
3.3.3 Base class library – thư viện các lớp cơ sở
Đây là thư viện các lớp cơ bản nhất, được dùng trong khi lập trình hay bản thân những
người xây dựng .NET Framework cũng phải dùng nó để xây dựng các lớp cao hơn. Ví dụ
các lớp trong thư viện này là String, Integer, Exception,…
3.3.4 ADO.NET và XML
Bộ thư viện này gồm các lớp dùng để xử lý dữ liệu. ADO.NET thay thế ADO để trong việc
thao tác với các dữ liệu thông thường. Các lớp đối tượng XML được cung cấp để bạn xử lý
các dữ liệu theo định dạng mới: XML. Các ví dụ cho bộ thư viện này là SqlDataAdapter,
SqlCommand, DataSet, XMLReader, XMLWriter,…
3.3.5 Web Service
Web services có thể hiểu khá sát nghĩa là các dịch vụ được cung cấp qua Web (hay
Internet). Dịch vụ được coi là Web service không nhằm vào người dùng mà nhằm vào
người xây dựng phần mềm. Web service có thể dùng để cung cấp các dữ liệu hay một chức
năng tính toán. Ví dụ, công ty du lịch của bạn đang sử dụng một hệ thống phần mềm để ghi
nhận thông tin về khách du lịch đăng ký đi các tour. Để thực hiện việc đặt phòng khách sạn
tại địa điểm du lịch, công ty cần biết thông tin về phòng trống tại các khách sạn. Khách sạn
có thể cung cấp một Web service để cho biết thông tin về các phòng trống tại một thời
điểm. Dựa vào đó, phần mềm của bạn sẽ biết rằng liệu có đủ chỗ để đặt phòng cho khách
du lịch không? Nếu đủ, phần mềm lại có thể dùng một Web service khác cung cấp chức
năng đặt phòng để thuê khách sạn. Điểm lợi của Web service ở đây là bạn không cần một
người làm việc liên lạc với khách sạn để hỏi thông tin phòng, sau đó, với đủ các thông tin
Trang 23
Luận văn tốt nghiệp Xây dựng website bán coupon
về nhiều loại phòng người đó sẽ xác định loại phòng nào cần đặt, số lượng đặt bao nhiêu,
đủ hay không đủ rồi lại liên lạc lại với khách sạn để đặt phòng. Đừng quên là khách sạn lúc
này cũng cần có người để làm việc với nhân viên của bạn và chưa chắc họ có thể liên lạc
thành công. Web service được cung cấp dựa vào ASP.NET và sự hỗ trợ từ phía hệ điều
hành của Internet Information Server.
3.3.6 ASP.NET
Bộ thư viện các lớp đối tượng dùng trong việc xây dựng các ứng dụng Web. ASP.NET
không phải là phiên bản mới của ASP 3.0. Ứng dụng web xây dựng bằng ASP.NET tận
dụng được toàn bộ khả năng của .NET Framework. Bên cạnh đó là một "phong cách" lập
trình mới mà Microsoft đặt cho nó một tên gọi rất kêu: code behind. Đây là cách mà lập
trình viên xây dựng các ứng dụng Windows based thường sử dụng – giao diện và lệnh được
tách riêng. Tuy nhiên, nếu bạn đã từng quen với việc lập trình ứng dụng web, đây đúng là
một sự "đổi đời" vì bạn đã được giải phóng khỏi mớ lệnh HTML lộn xộn tới hoa cả mắt.
Sự xuất hiện của ASP.NET làm cân xứng giữa quá trình xây dựng ứng dụng trên Windows
và Web. ASP.NET cung cấp một bộ các Server Control để lập trình viên bắt sự kiện và xử
lý dữ liệu của ứng dụng như đang làm việc với ứng dụng Windows. Nó cũng cho phép
chúng ta chuyển một ứng dụng trước đây viết chỉ để chạy trên Windows thành một ứng
dụng Web khá dễ dàng. Ví dụ cho các lớp trong thư viện này là WebControl,
HTMLControl, …
ASP.NET là một nền tảng ứng dụng web (web application framework) được phát triển và
cung cấp bởi Microsoft, cho phép những người lập trình tạo ra những trang web động,
những ứng dụng web và những dịch vụ web. Lần đầu tiên được đưa ra thị trường vào tháng
2 năm 2002 cùng với phiên bản 1.0 của .NET framework, là công nghệ nối tiếp của
Microsoft's Active Server Pages(ASP). ASP.NET được biên dịch dưới dạng Common
Language Runtime (CLR), cho phép những người lập trình viết mã ASP.NET với bất kỳ
ngôn ngữ nào được hỗ trợ bởi .NET language.
Trang 24
Luận văn tốt nghiệp Xây dựng website bán coupon
Hình ASP.NET
3.3.6.1 Lịch Sử
Sau khi phát hành phiên bản Internet Information Service 4.0 vào năm 1997, hãng
Microsoft bắt đầu nghiên cứu một mô hình ứng dụng web để giải quyết những bất tiện của
ASP, đặc biệt là việc tách riêng biệt phần thể hiện và phần nội dung cũng như cách viết mã
rõ ràng hơn. Mark Anders, quản lý của nhóm IIS và Scott Guthrie, gia nhập Microsoft vào
năm 1997 sau khi tốt nghiệp Đại học Duke, được giao nhiệm vụ định hình mô hình cần
phát triển. Những thiết kế ban đầu được thực hiện trong vòng 2 tháng bởi Anders và
Guthrie, Guthrie đã viết mã prototype đầu tiên trong khoảng thời gian nghỉ lễ Giáng sinh
năm 1997.
ASP.NET không phải phiên bản nâng cấp từ ASP mà là một thế hệ tiếp nối của ASP
Trang 25