[back] [index]
Cookie - chiếc bánh quy vô h́nh
Có thể bạn đă từng đọc được ở đâu đó về cookie nhưng chưa nh́n thấy nó hoạt
động như thế nào, chưa tưởng tượng được h́nh dáng của nó. Nếu bạn sử dụng
Windows XP, hăy mở Windows Explorer ra, vào C:\Documents and Settings\Ten Ban\Cookies\
sẽ thấy vô số cookie được các trang web gài vào từ bao giờ. Bạn
cũng có thể xóa toàn bộ những cookie này mà không làm ảnh hưởng ǵ đến máy.
Cookie (bánh quy) thường là một file text rất nhỏ (max. 4KB) được sử dụng để các trang web
"nhớ" tới bạn khi bạn quay lại, đơn giản hóa các khâu điền form, nhớ những
settings của bạn trên trang web... Cookie thường có dạng như sau:
Option: | tat | ~~local~~/D:\Website\Tri Dung\ihtml\ | 1088368571366429526991300723643229525583*
Tôi thêm dấu | vào để bạn dễ nh́n. Trong ḍng trên, bạn thấy một cookie có 5
khúc. Hai khúc đầu mang tên bạn, hoặc trong ví dụ trên là Option của nhạc nền, hai khúc giữa là Path của trang web (trong ví
dụ này trang web nằm local trên máy của tôi) và khúc sau là thời điểm hết hạn
của cookie. Đoạn code dưới cho phép bạn tạo (set_cookie)và đọc (get_cookie) một cookie:
<script language="JavaScript">
//Script by www.DOTHANHLONG.ORG
var browser = navigator.appName;
LIVEDAYS=7;
function set_cookie(name, value) // Tao cookie
{
document.cookie= name + "=" + escape(value)+ "; EXPIRES=" + cookie_live();
}
function cookie_live() // Tinh thoi diem het han
{
var date=new Date();
date.setDate(date.getDate()+LIVEDAYS);
var gmt=date.toGMTString();
var k1=gmt.indexOf(" ");
var k2=gmt.indexOf(" ", k1+1);
var k3=gmt.indexOf(" ", k2+1);
var
str=gmt.substring(0,k2)+"-"+gmt.substring(k2+1,k3)+"-"+gmt.substring(k3+3,gmt.length);
return str;
}
function get_cookie(name) //doc Cookie
{
var value;
if(document.cookie != "") {
var kk=document.cookie.indexOf(name+"=");
if(kk >= 0) {
kk=kk+name.length+1;
var ll=document.cookie.indexOf(";", kk);
if(ll < 0)ll=document.cookie.length;
value=document.cookie.substring(kk, ll);
value=unescape(value);
}
}
return value;
}
</script>
|
Cookie at work - background music [see more] |
Cách tạo nhạc nền cho trang web bạn đă biết trong chương trước. Sau đây tôi
xin giới thiệu cách điều chỉnh nhạc nền phù hợp với ư muốn của người tới thăm.
Trang web cho phép người tới thăm lựa chọn một trong 3 cách: chơi nhạc một lần,
chơi đi chơi lại hoặc tắt hẳn. Và chắc chắn bạn sẽ bất ngờ khi quay lại trang
này sau 1 giờ: bạn sẽ nghe một bản nhạc khác! Điều này đơn giản lắm, chỉ cần đọc
kỹ trang JavaScript và nghiên cứu source code của hai script dưới là bạn tự làm
được ngay. Bây giờ mời bạn thử!
Để làm được điều trên, bạn cần viết đoạn code sau:
<script language="JavaScript" src="scripts/music.js"></script>
<form method="post" name="music">
Lam on chon nhac nen cho trang web:
<input type="radio" name="opt" onClick="set_cookie('Option:','chay mot lan')"> chay mot lan
<input type="radio" name="opt" onClick="set_cookie('Option:','chay het bai quay lai')"> chay lien tuc
<input type="radio" name="opt" onClick="set_cookie('Option:','tat nhac nen')" checked> tat
</form>
<script language="JavaScript" src="scripts/load_music.js"></script>
|
Ngoài ra, cần có một folder mang tên sound, chứa các bài hát (xem trong script
source code để biết tên các bài cần thiết) và hai script (download ở đây:
music.js và load_music.js)
nằm trong folder scripts
|
|
Bạn nhoc_con có hỏi trong forum cách tạo một popup window (thường chứa những
thông báo mới) khi một trang được mở ra và muốn popup đó chỉ mở trong lần đầu
tiên khi người xem vừa đến. Đây lại là một nhiệm vụ cao cả của cookie. Trang web
mở popup và tự cài một cookie vào máy của người xem và đánh dấu là máy này
đă đọc popup để lần sau trang web không mở popup nữa. Tất nhiên bạn có thể dựa
vào ví dụ trên để cho phép người xem tự quyết định ḿnh có muốn xem popup trong
lần thăm tới không.
Cookie at work - Popup Setting [see more] |
Trong ví dụ này, bạn có thể thử những ǵ tôi đă nêu ở trên:
Để làm được điều trên, bạn cần viết đoạn code sau:
<script language="JavaScript" src="scripts/popup.js"></script>
<form method="post" name="popup">
Show popup on your next visit?
<input type="radio" name="opt" onClick="set_popup('Popup:','yes')"> Yes
<input type="radio" name="opt" onClick="set_popup('Popup:','no')" checked> No
</form>
<script language="JavaScript" src="scripts/load_popup.js"></script>
|
Ngoài ra, bạn c̣n cần một file mang tên ihtml_popup.htm và hai script (download ở đây:
popup.js và
load_popup.js)
nằm trong folder scripts.
Trong trang Popup, bạn nên để lệnh onBlur="self.close()" trong tag body
để trang này tự đóng khi người xem xem tiếp trang chính
|
|
[index]
|