ASP Cookie
- Trang trước Form ASP
- Trang tiếp theo Session ASP
Cookie thường được sử dụng để nhận diện người dùng.
Ví dụ
- Cookie chào mừng
- Cách tạo cookie chào mừng.
Cookie là gì?
Cookie thường được sử dụng để nhận diện người dùng. Cookie là một tệp nhỏ mà máy chủ để lại trên máy tính của người dùng. Mỗi khi một máy tính qua trình duyệt yêu cầu trang, máy tính đó cũng sẽ gửi cookie. Bằng cách sử dụng ASP, bạn có thể tạo và lấy lại giá trị của cookie.
Làm thế nào để tạo cookie?
Lệnh "Response.Cookies" được sử dụng để tạo cookie.
Lưu ý:Lệnh Response.Cookies phải nằm trước thẻ <html>.
Trong ví dụ dưới đây, chúng ta sẽ tạo một cookie có tên là "firstname" và gán giá trị "Alex" cho nó:
<% Response.Cookies("firstname")="Alex" %>
Cũng có thể gán thuộc tính cho cookie, chẳng hạn như thiết lập thời gian hết hạn của cookie:
<% Response.Cookies("firstname")="Alex" Response.Cookies("firstname").Expires=#May 10,2020# %>
Làm thế nào để lấy lại giá trị của cookie?
Lệnh "Request.Cookies" được sử dụng để lấy lại giá trị của cookie.
Trong ví dụ dưới đây, chúng ta đã lấy lại giá trị của cookie có tên "firstname" và hiển thị giá trị đó trên trang web:
<% fname=Request.Cookies("firstname") response.write("Firstname=" & fname) %>
Kết quả xuất ra:
Firstname=Alex
Cookie có khóa
Nếu một cookie chứa một tập hợp các giá trị, chúng ta có thể nói rằng cookie có khóa (Keys).
Trong ví dụ dưới đây, chúng ta sẽ tạo một tập cookie có tên là "user" chứa các khóa thông tin người dùng:
<% Response.Cookies("user")("firstname")="John" Response.Cookies("user")("lastname")="Adams" Response.Cookies("user")("country")="UK" Response.Cookies("user")("age")="25" %>
Đọc tất cả các cookie
Vui lòng đọc mã dưới đây:
<% Response.Cookies("firstname")="Alex" Response.Cookies("user")("firstname")="John" Response.Cookies("user")("lastname")="Adams" Response.Cookies("user")("country")="UK" Response.Cookies("user")("age")="25" %>
Giả sử máy chủ của bạn đã truyền tất cả những cookie này cho một người dùng.
Hiện nay, chúng ta cần đọc những cookie này. Dưới đây là ví dụ minh họa cách thực hiện điều này (lưu ý rằng mã dưới đây sẽ sử dụng HasKeys để kiểm tra cookie có chứa khóa hay không):
<html> <body> <% dim x,y for each x in Request.Cookies response.write("<p>") if Request.Cookies(x).HasKeys then for each y in Request.Cookies(x) response.write(x & ":" & y & "=" & Request.Cookies(x)(y)) response.write("<br />") next else Response.Write(x & "=" & Request.Cookies(x) & "<br />") end if response.write "</p>" next %> </body> </html>
Kết quả xuất ra:
firstname=Alex user:firstname=John user:lastname=Adams user:country=UK user:age=25
Làm thế nào để đối phó với trình duyệt không hỗ trợ cookie?
Nếu ứng dụng của bạn cần giao tiếp với trình duyệt không hỗ trợ cookie, bạn buộc phải sử dụng các phương pháp khác để truyền thông tin giữa các trang của ứng dụng. Có hai cách này:
1. Thêm tham số vào URL
Bạn có thể thêm các tham số vào URL:
<a href="welcome.asp?fname=John&lname=Adams"> Chuyển đến Trang Chào Mừng </a>
Sau đó lấy lại các giá trị này trong tệp "welcome.asp" tương tự như sau:
<% fname=Request.querystring("fname") lname=Request.querystring("lname") response.write("<p>Hello " & fname & " " & lname & "!</p>") response.write("<p>Welcome to my Web site!</p>") %>
2. Sử dụng biểu mẫu
Bạn có thể sử dụng biểu mẫu. Khi người dùng nhấn nút gửi, biểu mẫu sẽ gửi dữ liệu người dùng nhập vào "welcome.asp":
<form method="post" action="welcome.asp"> Tên: <input type="text" name="fname" value=""> Họ: <input type="text" name="lname" value=""> <input type="submit" value="Submit"> </form>
Sau đó lấy lại các giá trị này trong tệp "welcome.asp", giống như sau:
<% fname=Request.form("fname") lname=Request.form("lname") response.write("<p>Hello " & fname & " " & lname & "!</p>") response.write("<p>Welcome to my Web site!</p>") %>
- Trang trước Form ASP
- Trang tiếp theo Session ASP