یك Cookie اغلب براى شناسائى كاربر استفاده مىشود. مثالها Cookie خوشآمدگویى چگونه یك Cookie خوشآمدگویى درست كنیم.
یك Cookie چیست؟ یك Cookie اغلب براى شناسندن كاربر استفاده مىشود. یك Cookie یك فایل كوچك است كه سرور آن را در كامپیوتر كاربر جاسازى مىكند. هر بار كه همان كامپیوتر یك صفحه را درخواست مىكند، Cookie نیز فرستاده مىشود. با ASP شما مىتوانید هم مقادیر Cookie را بسازید و هم آنها را استخراج نمایید. چگونه یك Cookie بسازید؟ Response.Cookie براى ساختن Cookie استفاده مىشود.
توجه: Response.Cookie باید قبل از تگ درج شود.
در مثال زیر، ما یك Cookie درست خواهید كردم و اسم آن را "firstname" مىگذاریم و مقدار "Alex" را به آن مىدهیم:
همچنین امكان دارد كه خصوصیاتى را مثل تاریخ انقضاى cookie را به آن بدهید:
چگونه مقدار cookieها را استخراج كنیم دستور "Request.Cookies" براى استخراج اطلاعات از cookieها استفاده مىشود.
در مثال زیر، ما مقدار cookieى با نام "firstname" را استخراج كرده و در صفحه نشان دادیم:
خروجى: Firstname=Alex یك Cookie با كلید اگر یك cookie حاوى مجموعهاى از مقادیر باشد، مىگوییم آن cookie دارى كلیدهایى است.
در مثال زیر، ما یك مجموعه cookie با نام "user" درست مىكنیم. cookie به نام "user" داراى كلیدهایى است كه حاوى اطلاعاتى راجع به كاربر است.
<%
Response.Cookies("user")("firstname")="John"
Response.Cookies("user")("lastname")="Smith"
Response.Cookies("user")("country")="Norway"
Response.Cookies("user")("age")="25"
%>
خواندن همه Cookieها
به كد زیر نگاه كنید:
<%
Response.Cookies("firstname")="Alex"
Response.Cookies("user")("firstname")="John"
Response.Cookies("user")("lastname")="Smith"
Response.Cookies("user")("country")="Norway"
Response.Cookies("user")("age")="25"
%>
فرض كنیم كه سرور شما همه cookieهاى بالا را به كاربر فرستاده است.
حالا ما مىخواهیم تمام cookieها را كه به كاربر فرستاده شده است را بخوانیم. مثال زیر نشان مىدهد كه چگونه این كار را انجام دهیم (توجه داشته باشید كه در مثال پایین با استفاده از HasKeys چك مىكند كه آیا cookie كلید دارد یا نه؟ <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>
خروجى: firstname=Alex user:firstname=John user:lastname=Smith user: country=Norway user: age=25 اگر Browser داراى پشتیبانى Cookie نباشد چه اتفاقی مىافتد؟
اگر برنامه شما با Browserى سر و كار داشته باشد كه cookie را پشتیبانى نمىكند، باید از روشهاى دیگرى براى انتقال اطلاعات از یك صفحه به صفحات دیگر در برنامه خود استفاده كنید. دو راه براى انجام این كار هست:
1. اضافه كردن پارامترها به URL
شما مىتوانید پارامترها را به URL اضافه كنید:
<a href="welcome.asp?fname=John&lname=Smith">
Go to Welcome Page</a>
و مقادیر موجود در "welcome.asp" را همچون مثال زیر استخراج كنید:
2. استفاده از form شما مىتوانید از فرمها استفاده كنید. وقتى كه كاربر روى دكمه Submit كلیك كند فرم ورودىهاى كاربر را به "welcome.asp" رد مىكند:
<form method="post" action="welcome.asp">
First Name: <input type="text" name="fname" value="">
Last Name: <input type="text" name="lname" value="">
<input type="submit" value="Submit">
</form>
مقادیر موجود در "welcome.asp" را همچون این مثال استخراج كنید:
<%
fname=Request.form("fname")
lname=Request.form("lname")
response.write("<p>Hello " & fname & " " & lname & "!</p>")
response.write("<p>Welcome to my Web site!</p>")
%>
|