[.NET] (asp.net 1.0)不同使用者 可用同一台電腦登入
想要像許多網站一樣,不同使用者 可用同一台電腦登入
ex:電腦主人本來有勾"記住帳號"
登出後重新登入時,帳號輸入欄會去cookie抓主人的帳號,只要輸入密碼即可
但其它人還是可以改以自己的帳號密碼登入
目前情形:
一開始用帳號A並勾選"記住帳號"登入
登出後,改用B登入
但是按登入後,輸入帳號的地方又變回了A 且顯示帳號密碼錯誤的訊息
我以為是cookie的問題
所以設 若輸入的帳號不同於前一個 就把前一個帳號的cookie清除
但試了好幾種方法都不行
一定要手動去IE→工具 清除cookie才能以別的帳號登入
但就不符合原本的需求
煩請解惑,感恩
以下為程式碼:)
1 Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
2 '在這裡放置使用者程式碼以初始化網頁
3
4 '清除登入資訊
5 LoginObject.LoginClean(Me)
6
7 ' "記住帳號"功能
8 Dim RememberMe As HttpCookie
9 RememberMe = Request.Cookies("account")
10 If Not RememberMe Is Nothing Then
'若之前有勾選"記住帳號",則只要輸入密碼就好
11 inputid.Text = Request.Cookies("account").Value
12 End If
13
14 End Sub
15
16 Private Sub btnlogin_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnlogin.Click
17
18 Dim older As String = Request.Cookies("account").Value '去cookie取出帳號
19 If Me.inputid.Text <> older Then '若後來輸入別的帳號登入,則把cookie內的
帳號清掉,但以下四種寫法都無法清掉>"<
20 'Response.Cookies("account").Expires = Nothing
21 'Response.Cookies("account").Expires = DateTime.Now.AddDays(-1)
22 'Response.Cookies.Clear()
23 'Response.Cookies.Remove("account")
24 End If
25
26 If rememberID.Checked Then '若勾選"記住帳號"並登入,就把相關資訊寫入cookie
,下次登入只要輸入密碼就好
27 Response.Cookies("account").Value = inputid.Text
28 Response.Cookies("account").Expires = "12/31/2999"
29 End If
30 '呼叫登入程序
31 If Page.IsValid Then
32 ''''''四個引數分別為 使用者的id、pwd、身分別(一般/廠商會員)、此webform
33 If LoginObject.Login(Me.inputid.Text, Me.inputpwd.Text,
MorF.SelectedItem.Value, Me) = False Then
34 '如果登入失敗,則顯示訊息,請使用者重新登入
35 Response.Write("<Script language='Javascript'>alert('帳號或密碼有
誤,請重新輸入並確認身份選擇')</Script>")
36 End If
37 End If
38 End Sub
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.228.101.63
Visual_Basic 近期熱門文章
PTT數位生活區 即時熱門文章