( تعداد نمایش : 1636 )

ایجاد Cookie

Cookie یکسری رشته حرفی با فرمت مشخص میباشد. یعنی:

CookieName = CookieValue; expires = expirationDateGMT ; path = URLpath ; Domain = siteDomain

توضیح خطوط فوق از این قرار است که اولین قسمت رشته حرفی به Cookie اسم و مقدار مربوطه را تخصیص داده که بایستی همیشه در ایجاد Cookie در نظر داشت. سپس تاریخ انقضای Cookie توسط expiration Date تعیین میشود که در فرمان تعیین شده فوق, browser بطور اتوماتیک, Cookie را پاک میکند. سپس اجازه وجود یک URL داده شده و در نهایت آدرس domain در Cookie تنظیم میگردد.
توجه داشته باشید که میتوان از چند
Cookie درون یک صفحه استفاده نمود بدین منظور بعد از مشخصات هر قسمت, از علامت ” ; ” استفاده میگردد.

برای ایجاد Cookie

expireDate = new Date

1.
ابتدا تاریخ فعلی گرفته شده و در متغییر expireDate نهاده میشود.

expireDate.setMonth(expireDate.getMonth()+6)

2.
بدین صورت مقدار تاریخ اعتبار Cookie مورد نظر, ۶ ماه تعیین میگردد.

userName = “”

3.
سپس متغییر userName با مقدار خالی تعریف میگردد.

userName = document.cookie.split(“=”)[1]

4.
ابتدا خالی نبودن محتوی Cookie بررسی میشود. سپس توسط متد (“=”)split, هر record مربوط به Cookie به فیلدهای مختلف تقسیم میشود بطوریکه مثلاCookieField[0]s نام وCookieField[1]s مقدار Cookie میباشد.

function setCookie() {
userName = document.myForm.nameField.value

5.
در این مرحله یک تابع جدید با نامsetCookie()s ایجاد شده, سپس در خط بعد مقدار UserName توسط اطلاعات وارد شده کاربر درون فیلد فرم, مجددا نوشته میشود.

document.cookie = “username=” + username + “;expires=” + expireDate.toGMTString()

6.
همانطور که در مطالب قبل ذکر شد, Cookie ها شامل رشته های حرفی ساده میباشد, در نتیجه توسط document.cookie, نام کاربر و تاریخ انقضاء نوشته شده زیرا توسط متد toGMTString, تاریخ expireDate به رشته حرفی تبدیل شده, که نتیجتا میتوان آن را درون Cookie قرار داد.

onLoad=”document.myForm.nameField.value=userName”

7.
دستور onLoad در تگ body, نام کاربر را در صورت وجود در فایل Cookie درون فیلد name مینویسد.

<input readonly type=”text” name=”nameField” onBlur=”setCookie()” size=”40″>

8.
نهایتا هنگام رهایی کاربر از فیلد متن, توسط کنترل کننده onBlur, تابع setCookie فرا خوانده میشود.
**نکته
  • در این اسکریپت فرض میشود User name در Cookie وجود داشته است. در مباحث بعدی, نحوه کنترل چندین Cookie نیز توضیح داده میشود

<html>
<head>
<script language=”javascript” type=”text/javascript”>
expireDate = new Date
expireDate.setMonth(expireDate.getMonth()+6)

userName = “”
if (document.cookie !=”") {
userName = document.cookie.split(“=”)[1]
}

function setCookie() {
userName = document.myForm.nameField.value
document.cookie = “username=” + username + “;expires=” + expireDate.toGMTString()
}
</script>
</head>
<body onLoad=”document.myForm.nameField.value=userName”>
</p>
<h2>
Cookies:
</h2>
<form name=”myForm”>
<input readonly type=”text” name=”nameField” onBlur=”setCookie()” size=”40″>

</form>
</body>
</html>

دیدگاه خود را بیان کنید.

باید وارد سایت شده باشید برای دیدگاه دادن