Giáo trình Thiết kế Web

Quy trình.

Trƣớc khi thiết kế một Website, chúng ta cần thiết phải lập một bản kế

hoạch rõ ràng, chi tiết để có thể lƣờng trƣớc đƣợc độ phức tạp, khó khăn

của Website cũng nhƣ hạn chế việc phải thay đổi lại cấu trúc, thành phần

Website sau này và nên tuân thủ một cách tuần tự qui trình sau :

Lập kế hoạch và xác định chiến lƣợc phát triển  Thiết kế và lập

trình Website  Kiểm tra  Lƣu trữ và xuất bản web  Quảng bá và phát

triển nội dung  Theo dõi, đánh giá và bảo trì website.

- Lập kế hoạch và xác định chiến lƣợc phát triển : Phân tích yêu cầu,

xác định mục tiêu, phạm vi nội dung của website, công nghệ hỗ trợ, tính

năng tƣơng tác, nhu cầu quảng bá,.

- Thiết kế và lập trình Website : Xây dựng cấu trúc nội dung của

Website, các vấn đề cần đề cập trong từng nội dung. Chuẩn bị hình ảnh,

video, nhạc,. để minh họa cho phần lời và phải lựa chọn thật cẩn thận để

chúng phải chứa đựng thông tin, đẹp và ấn tƣợng. Thiết kế các giao diện,

các cơ sở dữ liệu và lập trình kết hợp với cơ sở dữ liệu để tạo ra các trang

web tĩnh có giao diện đẹp, nội dung phong phú và các trang web động có

tính tƣơng tác cao với ngƣời xem.

- Kiểm tra: Việc kiểm tra kỹ lƣỡng trƣớc khi thực hiện việc upload bao

gồm : Kiểm tra nội dung, kiểm tra chính tả, kiểm tra tốc độ, kiểm tra các

liên kết, thử các lỗi bảo mật, kiểm tra trên nhiều trình duyệt, với mục đích

để loại bỏ những thành phần rƣờm rà, những lỗi sẽ bị mắc phải nhằm

hoàn thiện sản phẩm trƣớc khi công bố rộng rãi.

- Xuất bản: Đăng ký tên miền và thuê dịch vụ hosting sau đó upload

website lên mạng. Dựa vào hiện trạng và mục tiêu phát triển website để lựa

chọn ISP thích hợp.

- Quảng bá và phát triển nội dung : Đăng ký Website vào các máy tìm

kiếm (search engine) trong nƣớc và thế giới. Nâng tầm phát triển Website

bằng cách tự động hoá dần các chức năng của Website.25

- Theo dõi, đánh giá và bảo trì site: Dựa vào các thông tin truy cập thu

thập đƣợc từ ISP mà ta có thể quyết định tăng cƣờng nội dung cho những

phần thƣờng đƣợc truy cập và giảm bớt những phần ít đƣợc truy cập. Đồng

thời còn phải quan tâm đến việc cập nhật nội dung và nâng cao tính thẩm

mỹ của giao diện.

Giáo trình Thiết kế Web trang 1

Trang 1

Giáo trình Thiết kế Web trang 2

Trang 2

Giáo trình Thiết kế Web trang 3

Trang 3

Giáo trình Thiết kế Web trang 4

Trang 4

Giáo trình Thiết kế Web trang 5

Trang 5

Giáo trình Thiết kế Web trang 6

Trang 6

Giáo trình Thiết kế Web trang 7

Trang 7

Giáo trình Thiết kế Web trang 8

Trang 8

Giáo trình Thiết kế Web trang 9

Trang 9

Giáo trình Thiết kế Web trang 10

Trang 10

Tải về để xem bản đầy đủ

pdf 278 trang duykhanh 8362
Bạn đang xem 10 trang mẫu của tài liệu "Giáo trình Thiết kế Web", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Giáo trình Thiết kế Web

Giáo trình Thiết kế Web
s sau vào 
GiftShop.css 
.ShoppingCartTitle 
{ 
 color: Red; 
 font-family: Verdana, Helvetica, sans-serif; 
 font-size: 16px; 
} 
- Chuột phải vào dự án trong Solution Explorer và kích Add New 
Item. 
- Chọn Web Form Template, đặt tên ShoppingCart.aspx. Kích vào hộp 
chọn Place code in separate file and Select master page nhƣ hình dƣới và 
sau đó kích Add. 
261 
Hình 3.55: Thêm ShoppingCart.aspx 
- Chọn GiftShop.master trong hộp thoại hiện ra và kích OK. 
- Bạn hãy thiết kế trang ShoppingCart giống hình dƣới đây, và đặt 
thuộc các thuộc tính có trong trang nhƣ bảng dƣới. 
Hình 3.56: ShoppingCart.aspx trong cửa sổ Design 
262 
Thuộc tính các điều khiển trong ShoppingCart.aspx 
- Bây giờ bạn định dạng điều khiển GridView. Thiết lập thuộc tính 
AutoGenerateColumns là false, DataKeyNames là ProductID, độ rông 
100%, và BorderWidth là 0px. 
- Trong cửa sổ Design , chọn GridView, kích vào Smart Link, và chọn 
Add New Column và thêm vào các cột theo danh sách dƣới đây: 
- Kích GridView Smart Link và chọn Edit Columns, trong bảng 
Selected fields, chọn Price và đặt thuộc tính DataFormatString giá trị {0:c}. 
- Tƣơng tự nhƣ vậy đặt thuộc tính DataFormatString giá trị {0:c} cho 
trƣờng Subtotal. 
- Trƣờng Quantity là một Template Field vì vậy bạn phải điền nó bằng 
tay, chuyển sang cửa sổ Source thêm Textbox sau đây tới Item Template: 
 <asp:TextBox ID="editQuantity" runat="server" 
CssClass="GridEditingRow" Width="24px" MaxLength="2" 
Text='' /> 
263 
- Sử dụng style SmallButtonText cho nút nhấn Delete, chuyển sang 
cửa sổ Design kích vào Grid Smart Link, chọn Edit Columns. Trong hộp 
thoại mở ra, chọn Delete field kích chuột thuộc tính ControlTyle, và đặt 
CssClass là SmallButtonText, nhƣ hình dƣới đây: 
Hình 3.57: Chọn style cho nút nhấn Xóa 
- Kích chuột OK để đóng hộp thoại. Xác minh rằng trong phần nội 
dung của nó phải giống hình 3.58. 
Hình 3.58. Phần nội dung của ShoppingCart.aspx trong cửa sổ Design 
- Mở tập tin code-behind (ShoppingCart.aspx.cs), viết những đoạn mã 
giống dƣới đây: 
264 
public partial class ShoppingCart : System.Web.UI.Page 
{ 
 protected void Page_Load(object sender, EventArgs e) 
 { 
 // Tải trang ban đầu 
 if (!IsPostBack) 
 PopulateControls(); 
 } 
 // đổ dữ liệu vào điều khiển giỏ hàng 
 private void PopulateControls() 
 { 
 // đặt tiêu đề cho trang 
 this.Title = BalloonShopConfiguration.SiteName + " : Shopping 
Cart"; 
 // lấy những sản phẩm có trong giỏ hàng 
 DataTable dt = ShoppingCartAccess.GetItems(); 
 // nếu giỏ hàng là rỗng... 
 if (dt.Rows.Count == 0) 
 { 
 titleLabel.Text = "Giỏ hàng trống!"; 
 grid.Visible = false; 
 updateButton.Enabled = false; 
 totalAmountLabel.Text = String.Format("{0:c}", 0); 
 } 
 else 
 // nếu giỏ hàng không rỗng... 
 { 
 // liệt kê danh sách vào nội dung giỏ hàng 
 grid.DataSource = dt; 
 grid.DataBind(); 
 // cài đặt điều khiển 
 titleLabel.Text = "Những sản phẩm trong giỏ hàng của bạn:"; 
 grid.Visible = true; 
 updateButton.Enabled = true; 
265 
 // hiển thị tổng giá 
 decimal amount = ShoppingCartAccess.GetTotalAmount(); 
 totalAmountLabel.Text = String.Format("{0:c}", amount); 
 } 
 } 
} 
 Chỉnh sửa số lƣợng sản phẩm 
- Mở ShoppingCart.aspx trong cửa sổ Design, chọn GridView, trong 
cửa Properties trong phần Action kích đúp vào RowDeleting cho việc tạo 
sự kiện tự động: 
- Viết vào đoạn mã giống dƣới đây: 
// xoá sản phẩm khỏi giỏ hàng 
 protected void grid_RowDeleting(object sender, 
GridViewDeleteEventArgs e) 
 { 
 // Chỉ số hàng bị xóa 
 int rowIndex = e.RowIndex; 
 // ID của sản phẩm bị xóa 
 string productId = grid.DataKeys[rowIndex].Value.ToString(); 
 // Xoá sản phẩm khỏi giỏ hàng 
 bool success = ShoppingCartAccess.RemoveItem(productId); 
 // Hiển thị trang thái 
 statusLabel.Text = success ? "Xóa sản phẩm thành công!<br 
/>" : 
 "Có lỗi trong việc xoá sản phẩm khỏi giỏ hàng!<br 
/>"; 
 PopulateControls(); 
 } 
- Trong ShoppingCart.aspx kích đúp vào nút Update Quantities, và 
viết vào đoạn mã nhƣ dƣới đây: 
// Cập nhật số lƣợng sản phẩm vào giỏ hàng 
 protected void updateButton_Click(object sender, EventArgs e) 
 { 
266 
 // Số hàng trong GridView 
 int rowsCount = grid.Rows.Count; 
 // lƣu trữ một hàng của GridView 
 GridViewRow gridRow; 
 // Đƣa vào một textbox nhập số lƣợng trong GridView 
 TextBox quantityTextBox; 
 // Khai báo biến lƣu trữ ID sản phẩm và số lƣợng 
 string productId; 
 int quantity; 
 // Khi cập nhật thành công? 
 bool success = true; 
 // duyệt qua các hàng của GridView 
 for (int i = 0; i < rowsCount; i++) 
 { 
 // Lấy một hàng 
 gridRow = grid.Rows[i]; 
 // ID của sản phẩm bị xoá 
 productId = grid.DataKeys[i].Value.ToString(); 
 // Lấy Textbox số lƣợng trong hàng 
 quantityTextBox = (TextBox)gridRow.FindControl("editQuantity"); 
 // Lấy số lƣợng và bảo vệ các giá trị không có thật 
 if (Int32.TryParse(quantityTextBox.Text, out quantity)) 
 { 
 // Cập nhật số lƣợng sản phẩm 
 success = success && ShoppingCartAccess.UpdateItem(productId, 
quantity); 
 } 
 else 
 { 
 // Không thành công 
 success = false; 
 } 
 // thông báo trạng thái 
 statusLabel.Text = success ? 
267 
 "Cập nhật giỏ hàng thành công!" : 
 "Lỗi cập nhật! Làm ơn kiểm tra lại!"; 
 } 
 PopulateControls(); 
 } 
 Chức năng “Continue Shopping” (Tiếp tục mua hàng) 
- Chỉnh sửa ShoppingCart.aspx trong cửa sổ Design kích đúp vào nút 
Continue Shopping tự động tạo ra phƣơng thức 
continueShoppingButton_Click, sửa nó giống dƣới đây: 
// Chuyển hƣớng đến các trang danh mục trƣớc đó 
 protected void continueShoppingButton_Click(object sender, 
EventArgs e) 
 { 
 // Chuyển hƣớng đến trang danh mục cuối cùng truy cập 
 // hoặc đến trang chính của danh mục 
 object page; 
 if ((page = Session["LastVisitedCatalogPage"]) != null) 
 Response.Redirect(page.ToString()); 
 else 
 Response.Redirect(Request.ApplicationPath); 
 } 
- Mở GiftShop.master.cs và sửa đổi nó để có thể lƣu vị trí trang hiện 
tại và phiên làm việc (Session) của khách truy cập. 
public partial class GiftShop : System.Web.UI.MasterPage 
{ 
 // Các trang web đƣợc coi là “danh mục trang” mà ngƣời truy câp 
 // có thể tiếp tục mua hàng 
 private static string[] catalogPages = { "~/Default.aspx", 
"~/Catalog.aspx", "~/Search.aspx" }; 
 // Thực thi bất kỳ trang nào khi trang đƣợc tải 
 protected void Page_Load(object sender, EventArgs e) 
 { 
268 
 // Khi trang tải lần đầu 
 if (!IsPostBack) 
 { 
 /* Lƣu truy cập vào trang danh mục mới nhất vào session 
 Để hỗ trợ chức năng tiếp tục mua hàng “Continue Shopping” */ 
 // lấy những trang hiện đƣợc nạp 
 string currentLocation = 
Request.AppRelativeCurrentExecutionFilePath; 
 // Nếu trang là một nới mà khác muốn tiếp tục mua hàng 
 // ghi nó lại vào session của ngƣời truy cập 
 for (int i = 0; i < catalogPages.GetLength(0); i++) 
 if (String.Compare(catalogPages[i], currentLocation, true) == 0) 
 { 
 // ghi lại vị trí hiện thời 
 Session["LastVisitedCatalogPage"] = Request.Url.ToString(); 
 // ngừng vòng lặp 
 break; 
 } 
 } 
 } 
} 
- Mở trang Product.aspx và thêm một nút nhấn Continue Shopping 
cạnh nút Add to Cart, với những thuộc tính sau: 
Tên thuộc tính Giá trị thuộc tính 
ID ContinueShoppingButton 
CssClass SmallButtonText 
Text Tiếp tục mua hàng 
- Trong cửa sổ Design, kích đúp vào để có sự kiện Click của nó đƣợc 
tạo ra và hoàn thành đoạn mã cho nút “Tiếp tục mua hàng”: 
// Chuyến hƣớng đến các trang danh mục đã truy cập trƣớc đó 
 protected void continueShoppingButton_Click(object sender, 
EventArgs e) 
269 
 { 
 // chuyển hƣớng đến trang danh mục cuối cùng đƣợc truy cập 
 object page; 
 if ((page = Session["LastVisitedCatalogPage"]) != null) 
 Response.Redirect(page.ToString()); 
 else 
 Response.Redirect(Request.ApplicationPath); 
 } 
- Thực thi dự án và đảm bảo rằng không xảy ra lỗi nào. 
Hình 3.59. Hiển thị nội dung tóm tắt của giỏ hàng 
270 
Hình 3.60: Trang ShoppingCart.aspx khi có sản phẩm 
B. THỰC HÀNH 
1. Nội dung thực hành 
Thực hành lại các ví dụ và ứng dụng đã làm ở bài học 
2. Bảng vật tƣ thiết bị cần thiết 
TT Thiết bị - Vật tƣ Thông số kỹ thuật Số lƣợng 
1 Một bộ máy tính - CPU: duo core 2.0 Ghz trở lên 
- Ram: 1 Gb trở lên 
- HDD: 40 GB 
1 bộ / học 
sinh 
2 Phần mềm - Hệ điều hành Windows 7 
- Microsoft SQL Server 2008 
- Microsoft Visual Studio 2010 
3. Quy trình thực hiện công việc 
TT Công việc Thao tác Yêu cầu 
1 Chuẩn bị 
- Kiểm tra các hoạt động của 
máy tính. 
- Phần mềm Visual Studio 2010 
- Phần mềm MS SQL Server 
2008 
- MT Hoạt động 
bình thƣờng. 
Đã cài đặt 
Đầy đủ. 
271 
2 
Xác định 
yêu cầu. 
- Xác định nội dung, mục đích 
của website. 
- Xác định đối tƣợng chủ yếu sử 
dụng website 
- Đầy đủ và 
chính xác. 
3 
Tạo cơ sở 
dữ liệu. 
- Thiết kế các bảng. 
- Ràng buộc giữa các bảng với 
Nhau. 
- Thiết kế các thủ tục cần thiết 
xử lý dữ liệu. 
- Thiết kế các hàm cần dùng nếu 
có. 
Đầy đủ, chính 
xác. 
4 
Xây dựng 
các lớp xử 
lý dữ liệu. 
- Lớp cấu hình. 
- Lớp xử lý dữ liệu. 
Đúng 
5 
Xây dựng 
lớp hiển thị. 
- Thiết kế khung trang trong tệp 
tin Master page. 
- Xây dựng các Web User 
Control. 
- Xây dựng các trang theo yêu 
cầu của ngƣời sử dụng. 
Đúng , trang 
web phải hoạt 
động tốt. 
6 Kiểm tra. 
- Chạy Website. 
- Chỉnh sửa lại các trang theo 
yêu cầu. 
- Hoạt động 
tốt. 
- Không lỗi. 
4. Tổ chức thực hiện. 
Mỗi học sinh một máy, thực hành dƣới sự hƣớng dẫn của giáo viên. 
5. Kiểm tra đánh giá. 
- Tạo và liên kết đƣợc với cơ sở dữ liệu: 2 điểm 
- Các chức năng trên các form giao diện hoạt động tốt : 6 điểm. 
- Các trang web đẹp, bố cục hợp lý, mầu sắc hài hoà : 2 điểm. 
272 
 BÀI TẬP BÀI 3. 
Bài 1: Thực hành lại tất cả các thí dụ về HTML Server Controls và Web 
Server Controls đã đƣợc học. Có thể viết các bài thực hành có nội dung 
tƣơng đƣơng các thí dụ để năm vững bài học. 
Bài 2: Sử dụng các điều khiển để thực hiện các bài tập sau: 
Tạo trang Default.aspx để thực hiện các nội dung sau: 
1) Nhập x, in ra tri tuyệt đối của x. 
2) Tính T = 1+2+3++n với n nguyên và n>0. 
3) In ra các số có 3 chữ số sao cho abc = a3 + b3 + c3 
4) Tính S = 1+2/22+3/33++n/nn, với n nguyên > 0. 
Hãy tạo các đƣờng link đến từng trang cho từng bài tập ở trên. 
Bài 3: Thực hành lại các ví dụ trong bài học, có thể tùy chỉnh theo ý của 
ngƣời làm. 
Bài 4: Đọc và giải thích nội dung của phần mã lệnh trang bai4.aspx. 
<%@ Page Language="C#" AutoEventWireup="true" 
CodeFile="bai4.aspx.cs" Inherits="bai4" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 
Transitional//EN" "
transitional.dtd"> 
 Session 
 <asp:DropDownList runat="server" id="Chonmau" 
autopostback="true" 
 onselectedindexchanged="Chonmau_IndexChanged"> 
 Chọn mầu 
... 
 Red 
 Green 
 Blue 
273 
Phần code behind 
public partial class bai4 : System.Web.UI.Page 
{ 
 protected void Page_Load(object sender, EventArgs e) 
 { 
 if (Session["BackgroundColor"] != null) 
 { 
 Chonmau.SelectedValue = 
Session["BackgroundColor"].ToString(); 
 BodyTag.Style["background-color"] = Chonmau.SelectedValue; 
 } 
 } 
 protected void Chonmau_IndexChanged(object sender, EventArgs e) 
 { 
 BodyTag.Style["background-color"] = Chonmau.SelectedValue; 
 Session["BackgroundColor"] = Chonmau.SelectedValue; 
 } 
} 
Thực thi trang, khi chọn màu Red từ DropdownList, kết quả thực thi trang: 
Hình 3.61: Kết quả thực thi trang 
- Kết thúc ứng dụng và chạy lại ứng dụng nà trong cùng một cửa sổ 
trình duyệt đang mở, trang hiển thị ra sao? Giải thích. 
- Nếu đóng cửa sổ trình duyệt và thực thi lại ứng dụng , trang hiển thị 
ra sao? Giải thích. 
274 
Bài 5: Tạo một ứng dụng ASP.NET về đối tƣợng Application và tập tin 
Global.asax . 
-Tạo trang Global.asax. 
void Application_Start(object sender, EventArgs e) 
{ 
int SiteHitCounter=500; 
int CurrentUsers=100; 
Application["SiteHitCounter"] = SiteHitCounter; 
Application["CurrentUsers"] = CurrentUsers; 
} 
void Application_End(object sender, EventArgs e) 
{ 
HitCountClass cls = new HitCountClass(); 
} 
void Application_Error(object sender, EventArgs e) 
{ 
// Code that runs when an unhandled error occurs 
} 
void Session_Start(object sender, EventArgs e) 
{ 
Application["SiteHitCounter"] = 
(int)Application["SiteHitCounter"] + 1; 
Application["CurrentUsers"] = 
(int)Application["CurrentUsers"] + 1; 
} 
void Session_End(object sender, EventArgs e) 
{ 
Application["CurrentUsers"] = 
(int)Application["CurrentUsers"] - 1; 
// Code that runs when a session ends. 
// Note: The Session_End event is raised only when the sessionstate 
mode 
275 
// is set to InProc in the Web.config file. If session mode is set to 
StateServer 
// or SQLServer, the event is not raised. 
} 
Tạo trang Counter.aspx 
<%@ Page Language="C#" AutoEventWireup="true" 
CodeFile="Counter.aspx.cs" 
Inherits="ApplicationPage" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 
Transitional//EN" 
""> 
Counter 
  
Viết đoạn mã sau cho trang Counter.aspx.cs 
public partial class Counter : System.Web.UI.Page 
{ 
protected void Page_Load(object sender, EventArgs e) 
{ 
Label.Text = "Hit Counter: " + 
Application["SiteHitCounter"] .ToString(); 
Label.Text = "Current users: " + 
276 
Application["CurrentUsers"].ToString(); 
} 
} 
Khi thực thi trang Counter ta đƣợc kết quả sau: 
Hit Counter: 501 
Current users: 101 
Hãy giải thích tại sao lại có kết quả trên? 
Bài 6: Hãy viết chƣơng trình thêm sửa xóa cho các bảng (Department, 
Category, Product) và quản lý hóa đơn để hoàn thành ứng dụng mẫu đã 
thiết kế ở bài 3, phần 5. 
277 
TÀI LIỆU THAM KHẢO 
Tiếng Việt. 
[1] Macromedia Dreamweaver 8 - Nguyễn Tƣờng Sinh và Lê Minh Hoàng 
- NXB Lao động xã hội, năm 2008. 
[2] Kỹ thuật xây dựng ASP.NET – Nguyễn Văn Lân – NXB Lao động xã 
hội, 2008. 
[3] Học và thực hành thiết kế web chuyên nghiệp với Macromedia 
Dreamweaver – Nguyễn Mạnh Hải – NXB Văn hóa thông tin, 2007. 
[4] Giáo trình HTML và thiết kế Web - Khoa Công nghệ thông tin, 
Trƣờng ĐH Công Nghệ, ĐHQGHN. 
[5] Bài giảng thiết kế web - Dƣơng Thành Phát trƣờng Cao đẳng Công 
nghệ thông tin Hồ Chí Minh. 
[6] Giáo trình thiết kế Web và làm hoạt hình - Phạm Quang Huy - NXB 
Giao thông vận tải, năm 2003. 
[7] Giáo trình tự học thiết kế Web động -Hoàng Hải - NXB Lao động Xã 
Hội , năm 2007. 
Tiếng Anh 
[8] HTML, DHTML and JavaScript - Aptech WorldWide‟s book.. 
[9] Beginning ASP.NET 2.0 in C# 2005-Matthew MacDonald - 2006 
[10] Pro ASP.NET 2.0 in C# 2005 - Matthew MacDonald và Mario 
Szpuszta -2005 
[11] Beginning SQL Server 2005 for Developers - Robin Dewson -2006 
[12] Professional ASP.NET 2.0 - Wiley Publishing xuất bản năm 2006 
[13] Web Designer For Teens - Thomson Course Technology PTR - 2005 
[14] Microsoft® 
ASP.NET 4Step by Step tác giả George Shepherd - 2010 

File đính kèm:

  • pdfgiao_trinh_thiet_ke_web.pdf