1樓:萊武
1、frame框架容易丟失session值,這是比較常見的問題。
2、有可能是虛擬伺服器商的伺服器不穩定造成的,這樣很容易丟失session.
建議:雖然session比較安全,但老是丟失也不是辦法,所以改用cookie吧
如何寫入cookies?
response.cookies("欄位名")=變數或字串,
例如:response.cookies("name2")="dingdang"
如何設定cookies時間?
response.cookies("欄位名").expires=時間函式+n,
例如:response.cookies("name2").expires=date+1,表示cookies儲存1天,
再比如:response.cookies("name2").expires=hour+8,表示cookies儲存8小時。
在以往的asp教程中,很少有介紹cookies退出的方法。在「退出」這個asp頁中可以這樣寫:
response.cookies("欄位名")=""
之後,在客戶端的瀏覽器就清除了cookies,並且cookies檔案會消失。注意有多少個欄位,就要寫多少句來清除。
如何讀取cookies?
變數名=request.cookies("欄位名"),
例如:name2=request.cookies("name2")
如果網頁中寫入<%=name2%>這句,則會顯示「dingdang」。
也可以這樣直接讀取cookies,<%=request.cookies("name2")%>
2樓:志者
把session.timeout=500,放到所有的session的賦值前面吧!可能會解決問題,試試!
3樓:匿名使用者
是用了frame框架吧,用這個容易出這種事,而且不好解決
asp.net session存值出現混亂?怎麼解決
4樓:匿名使用者
讓所有網民去裝ie8畢竟是不現實的.
你在一臺機器上再次登入,本來就已經修改了原來的session值了,當然儲存時會採用為新的userid.
所以說這是正常現象,本來不用修改.
但是,如果你非要實現以當時登入的uesrid來儲存文章的話,你必須把uesrid儲存到當前頁中,而不是session中,也就是在載入頁面時,立即將session中的userid儲存到一個變數中,如:
dim userid as string = session("userid").tostring
而在儲存時,你的sql語句要取userid的值來儲存,而不能去取現在的session("userid")的值.
這樣做還有個好處是當你寫文章的時間超過了session的超時限制,你不用重新登入即可儲存文章,但是壞處也不小,因為你會發現當你文章寫了一半,才發現還沒有登入時,你要麼以空id儲存,要麼就另外登入,重定文章......
所以說,建議你不要修改.
5樓:你是誰
session本來就是用於特定使用者的,出現你說的情況是不是你在機器上開了幾個瀏覽器同時訪問?如果是的話會出現串號的現象。如果你用是ie8這個問題還可以解決(你每次選擇新建一個會話),如果是8以下的版本就沒轍了。
只能開一個帳號。
6樓:豬哥哥他妹
正常情況下,應該不會出現這樣的問題,因為每次建立sesstion,都會有個唯一的sesstionid,獲取sesstion值的時候,會根據sesstionid取值。你可以先檢查下你的**是否有問題。檢查**是非常重要的。
如果不是**問題
你可以試試cookie+sesstion雙重驗證。客戶端儲存+伺服器儲存,取值時判斷cookie和sesstion值是否相同,相同就是正常使用者。
7樓:樹兒傳說
發**!單看你說的情況,總覺得比火星人入侵地球出現的機率都要小。
8樓:
session 是儲存在 客戶端的一個會話 , 建議試試 谷歌瀏覽器 那個貌似是 每個頁面一個程序 應該可以解決
9樓:知識裡的天使
你檢查一下,如果還是不行,那就重新弄個帳號。
10樓:匿名使用者
同一臺機器上開2個賬號也不會出現串錯門的情況啊.session本來就是一對一的
asp清除網頁中session
11樓:匿名使用者
修改:action=""> 為action="本頁.asp">1、清空全部:;alert('已全部清空session');history.go(-1);"/>
2、只清空本頁面中的sesison:
在頁頭寫個sub函式:
<%sub qingkongsesison() '函式名自己定短些session("fn11")=""
session("fn12")=""
session("fn13")=""
session("fn21")=""
session("fn22")=""
session("fn23")=""
end sub
%>如果fn後面的數字有規律並且有很多session,可以用兩個for...next迴圈賦值給fn後面數字的十位數和個位數,上面sub也可以這樣寫:
<%sub qingkongsesison() '函式名自己定短些for i=1 to 2
for j=1 to 3
session(cstr(i) & cstr(j))=""
next
next
end sub
%>3、在頁面的後面寫上呼叫qingkongsesison()的**:
<%if request.form("submit")="提交" then
call qingkongsesison()end if
%>
12樓:
如果用session.abandon會造成伺服器為該瀏覽器重新建立新的session連線標識,如果只是只是清除這幾個值的話,這種方式適合有規律的session變數,以及只是清除session中的部分資料,但不為使用者重建會話標識的方式:
for i=1 to 2
for j=1 to 3
session(cstr(i) & cstr(j))=""
next
next
13樓:來自大遊山典雅的薰衣草
如果要清除全部session的話可以用一個session.abandon來解決。如果要保留部分session可以先將要保留的session值用變數儲存起來後再清除session,然後重新賦值給要保留的session
text1=sessiona1
text2=sessiona2
session.abandon()
session("要保留的session名字")=text1大致思想是這樣的。
14樓:匿名使用者
用session.abandon就可以了
15樓:匿名使用者
都清除使用session.abandon
也可以有選擇的清除session("f11")=""
asp.net mvc session亂竄問題
16樓:匿名使用者
session 是唯一的 你的這種情況,應該是你在相同的電腦上同時登了ab,那麼 b 在後登入的時候 會覆蓋a的登入資訊。你試著在ie中登a 再到火狐 或者 谷歌瀏覽器中去登b ,這樣應該不會出現你所講的情況,你自己去試試看吧。
asp頁面傳session丟失問題
17樓:竹林ting風雨
還有這種事情?session是存在客戶端的,頁面的跳轉頁不會丟失的,除非超時。
asp網頁間資料傳遞,asp 網頁間資料傳遞
我寫最簡單的哈 a.asp b.asp dim h,v h request h v request v for i 1 to h response.write for j 1 to v response.write a next response.write next 呵呵 寫的很簡單 試試吧 a....
iss無法顯示asp網頁
先做一個 html 試驗是不是iis 壞了。再 做一個簡單的一個asp 頁面 輸出一段文字測試是不是編譯檔案錯了。新建一個文字輸入 time 儲存後,把字尾的txt改成asp 如果看不到,請取消隱藏字尾名,在我的電腦,工具,資料夾選項裡面 然後放到iis根目錄下,然後預覽 如果沒報錯的話,那說明是你...
怎麼設定遠端ASP網頁和MYSQL資料庫的連線
資料庫管理後臺一般有標準連線字串 考貝一下直接應用到 中去 如果是要在虛擬主機上連線的話,首先你要確定你的虛擬主機裝了mysql odbc 驅動.否則,你再怎麼問都沒有用.如果裝了可以用下面的方式連線 set conn server.createobject adodb.connection con...