Cookies Data in Cookies Which web site set
Cookies
Data in Cookies • Which web site set the cookie • Expiration date – Date. Time data type – Time. Span data type • One or more pieces of data • Keys • Define a new cookie: – Dim Cookie. CID as new Http. Cookie(“cid”) • Add to: Response. Cookies – Response. cookies. add(cookie. CID)
Cookie’s Properties • System. Web/Http. Cookie – Name – Value – Expires • To write a cookie: – Response. Cookies. Add(cookie. Obj)
Creating Cookies dim cookie. CID as New Http. Cookie("cid") dim cookie. CNAME as new Http. Cookie("cname") dim dt as date. Time=date. Time. now() dim ts as new Time. Span(30, 0, 0, 0) cookie. CID. value=cid. text cookie. Cname. value=cname. text cookie. CID. expires=dt. add(ts) cookie. Cname. expires=dt. add(ts) response. cookies. add(cookie. CID) response. cookies. add(cookie. CNAME) Note: The name(or key)of cookie. CID is “cid” Demo: ASPNET/Cookie. Form. aspx
<script runat="server"> sub set. Cookie(Sender As Object, E As Event. Args) dim cookie. CID as New Http. Cookie("cid") dim cookie. CNAME as new Http. Cookie("cname") dim dt as date. Time=date. Time. now() dim ts as new Time. Span(30, 0, 0, 0) cookie. CID. value=cid. text cookie. Cname. value=cname. text cookie. CID. expires=dt. add(ts) cookie. Cname. expires=dt. add(ts) response. cookies. add(cookie. CID) response. cookies. add(cookie. CNAME) end sub </script> <html> <body> <form runat="server" > <p> </p> <p>Please enter customer ID: <asp: textbox id="cid" runat="server" /></p> <p>Please enter your name: <asp: textbox id="cname" runat="server" /> <p>This ID and name will be used to set your cookie. </p> <p><asp: button id="button 1" text="Submit" runat="server" on. Click="Set. Cookie" /></p> </form> </body> </html>
Reading Cookies Dim custid as string Dim cust. Name as string custid=request. cookies("cid"). value custname=request. cookies("cname"). value
Demo: Cookie. Read. ASPX sub page_load() cid. text=request. cookies("cid"). value cname. text=request. cookies("cname"). value cookie. Count. text=cstr(request. cookies. count) Dim ckey As String For Each ckey In Request. Cookies. Keys Response. Write(ckey) Next end sub Note: Session. ID
Using Cookie with Data. Reader dim str. Conn as string ="Provider=Microsoft. Jet. OLEDB. 4. 0; Data Source = c: sales 2 k. mdb" dim obj. Conn as new Oledb. Connection(str. Conn) dim str. SQL as string dim obj. Data. Reader as oledb. Data. Reader dim cid as string cid=request. cookies("CID"). value str. SQL="select * from webcustomer where Cust. ID= '" & cid & "'" dim obj. Comm as new Oledb. Command(str. SQL, obj. Conn) obj. Data. Reader=obj. Comm. execute. Reader() obj. Data. Reader. Read() session("cname")=obj. Data. Reader("Cust. Name") response. write ("<hr>Welcome: " & obj. Data. Reader("Cust. Name") & "<hr>") Demo: ASPNET/Cookie. Greeting. aspx
Demo: Cookie. Greeting. Show. Order. aspx sub page_Load() If not Page. Is. Post. Back then dim cid as string cid=request. cookies("CID"). value obj. Conn. open() str. SQL="select * from webcustomer where Cust. ID= '" & cid & "'" dim obj. Comm as new Oledb. Command(str. SQL, obj. Conn) obj. Data. Reader=obj. Comm. execute. Reader() if not obj. Data. Reader. Read()then response. write("We don't have your record" & "</br>") else response. write ("<hr>Welcome: " & obj. Data. Reader("Cust. Name") & "<hr>") end if session("cid")=cid session("cname")=obj. Data. Reader("Cust. Name") obj. Conn. close() end if end sub
sub show. Orders(sender as object, e as Event. Args) dim cid, cname as string cid=session("cid") cname=session("cname") msg 1. text=cname & " orders: " obj. Conn. open() str. SQL="select * from web. Order where Cust. ID= '" & cid & "'" dim obj. Comm as new Oledb. Command(str. SQL, obj. Conn) obj. Data. Reader=obj. Comm. execute. Reader() dg. Order. Datasource=obj. Data. Reader dg. Order. Data. Bind() obj. Conn. close() end sub
Session • System. Web. Http. Session. State • Properties: – Session. ID – Is. Cookie. Less – Time. Out – Count • Methods – Abandon
Working with the Session • To place a value into the collection simply assign it a key and then assign the value: – Session (“Age”)=25 • To read values from the collection: – my. Age = Session(“Age”) • Session ID: – Session. ID • Demo: session. ID. aspx • To remove a session – Session. abandon
Increase Counter by One. What is wrong? <script runat="server"> dim counter as integer sub Page_Load() counter=0 end sub Increase. Counter(sender as object, e as Event. Args) counter=counter+1 response. write("The counter's value is: " + cstr(counter)) end sub Demo: State. Test. Counter. ASPX
Save Counter in Session Demo: State. Test. Counter 2. ASPX <script runat="server"> dim counter as integer sub Page_Load() if not page. is. Post. Back then counter=0 session("My. Counter")=counter else counter=session("My. Counter") end if end sub Increase. Counter(sender as object, e as Event. Args) counter=counter+1 response. write("The counter's value is: " + cstr(counter)) session("My. Counter")=counter End sub
- Slides: 14