台灣最大程式設計社群網站
線上人數
2106
 
會員總數:246575
討論主題:190032
歡迎您免費加入會員
討論區列表 >> C# >> asp.net c# 多人使用的網頁
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
asp.net c# 多人使用的網頁
價值 : 10 QP  點閱數:6143 回應數:13
樓主

Kato
初學者
52 4
95 14
發送站內信

目前我寫了一個 多人使用的網頁,多人登入使用裡面的功能
但是我有一個疑問,我在網頁間互傳值,是宣告一個公用變數先存放要傳的值之後再把值叫到另一個網頁
這樣的方式會不會產生什麼問題
例如使用者登入時我將帳號存入一個全域變數裡(變數是在c#的類別裡宣告),之後登入時在抓出來將帳號顯示在登入後的頁面上的label上
例如:
先在一個Class1裡宣告一個全域變數 public class Class1{ public static string user }
登入時頁面1 Class1.user = user.Text;
登入後 會跳到頁面2將值叫出顯示
label1user.Text = Class1.user;

我現在所擔心的是,上線後,在多人使用時,後面登入的人會蓋掉前面的人的值
之後資料就會亂掉

搜尋相關Tags的文章: [ c# ] , [ 網頁 ] , [ 多人 ] , [ 使用 ] , [ 上線 ] ,
本篇文章發表於2014-07-02 00:52
1樓
回應

四百龍銀
檢舉此回應
請使用狀態管理 這裡舉例 Session

這樣不管誰登入 帳號皆為唯一(帳號為單一的情況)
網路上範例很多 搜尋一下
較常見的用法還有cookie 等等
本篇文章回覆於2014-07-02 08:33
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

Kato
檢舉此回應
可是我是給很多使用者帳號 給它們登入的情況
帳號不是單一的
本篇文章回覆於2014-07-02 09:50
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

Bill
檢舉此回應
[ASP.NET]ViewState、Session、Cookies、Application State比較
本篇文章回覆於2014-07-02 12:10
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

四百龍銀
檢舉此回應
修正
早上剛睡醒 這句話怪怪的

表達的意思應該是
帳號為唯一值
不會有重複登入的情況(若擔心重複登入 檢驗的機制另外做)

還有這滿基本的建議你先把基礎的學好...在上線...
本篇文章回覆於2014-07-02 14:47
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

阿源哥哥
捐贈 VP 給 阿源哥哥 檢舉此回應
其實在 .NET Framework 裡面已經有現成的成員管理套件可用了,直接套著用,不必再自己發明輪胎了。

以下的文章連結是比較舊的方法(新的方法等過一段時間比較空閒時會再發表)

http://mvc.keigen.net/2012/01/blog-post_31.html

http://mvc.keigen.net/2012/02/blog-post.html

http://mvc.keigen.net/2012/02/blog-post_03.html

http://mvc.keigen.net/2012/02/blog-post_07.html

http://mvc.keigen.net/2012/02/blog-post_08.html
本篇文章回覆於2014-07-02 20:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

Kato
檢舉此回應
恕小弟,才識淺薄

還有一個疑問 就是說假設,不同台電腦上網 今天 甲使用者登入了 session.add("id","user1")
之後 乙登入 session.add("id","user1")
這樣 甲電腦登入的id 會被乙蓋掉嗎?
本篇文章回覆於2014-07-04 10:07
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

Kato
檢舉此回應
抱歉各位老師剛剛學生有一個地方打錯了
恕小弟,才識淺薄

還有一個疑問 就是說假設,不同台電腦上網 今天 甲使用者登入了 session.add("id","user1")
之後 乙登入 session.add("id","user2")
這樣 甲電腦登入的id 會被乙蓋掉嗎?
本篇文章回覆於2014-07-04 10:08
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
回應

四百龍銀
檢舉此回應
答案 不會
建議您上網看看資料
還有client端 與 server端的差異 建議版大也查詢一下
這些都是web開發重要的觀念問題歐~
本篇文章回覆於2014-07-04 10:56
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
作者回應

Kato
檢舉此回應
謝謝各位 老師
學生有找過資料但是學生不才理解能力不好對於這上一個問題就是理解不了
感謝各位老師指導 謝謝((鞠躬
本篇文章回覆於2014-07-04 11:41
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
10樓
回應

MIS2000 Lab
檢舉此回應
不要上網找「零散的資料」
找本書,或是把MSDN網站「狀態管理」的章節看完



經典好文 -- 讀書與上課
http://www.dotblogs.com.tw/billchung/archive/2010/11/28/19767.aspx

或許是網際網路太發達且資訊已經多到爆炸,
也許有人覺得要對一門電腦技術精通 只要上網查查資料、看看別人的部落格就有機會達成這樣的目標。

我不否認應該有少數這樣具有特別天份的人,這類的人多半對於知識的組織與吸收是有獨到之處,
不過這也意味著 大部份的人 走這條路通常都會進到死胡同,
很快地將會遭遇許多技術瓶頸的挑戰。....詳見全文http://www.dotblogs.com.tw/billchung/archive/2010/11/28/19767.aspx
本篇文章回覆於2014-07-04 14:47
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
11樓
回應

MIS2000 Lab
檢舉此回應
老文重貼:

如果真的像「你想像」的這麼簡單,為什麼你做不出來?

如果學新的東西,完全上網問問就有了
為什麼你到現在還做不出來?

為什麼針對沒學過的新東西,不能保持一點 "尊敬的心" 去學習?
你這麼看輕的東西,是看不起他的 "技術"?還是看不起花時間學習他的 "其他人"?
還是對自己的「學習能力」值得驕傲?

.....詳見全文 http://www.dotblogs.com.tw/mis2000lab/archive/2011/10/19/44277.aspx
本篇文章回覆於2014-07-04 14:50
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
12樓
回應

MIS2000 Lab
檢舉此回應
我幫您找了一下, SessionID應該能解您的疑惑

http://msdn.microsoft.com/zh-tw/library/system.web.sessionstate.httpsessionstate.sessionid(v=vs.110).aspx

您只要自己動手做一下,看看不同人的瀏覽器,其Session會不會衝突?
就理解了

就算您在同一台電腦上、同一個桌面、開啟兩三次 同一廠牌(如IE)瀏覽器
這些瀏覽器用到的Session, 都不用擔心重複

「實作」會比「空想」、「閱讀理論」,更快進入狀況
本篇文章回覆於2014-07-07 10:29
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
13樓
回應

MIS2000 Lab
檢舉此回應
我昨天上課有講到這個主題

錄了一小段影片 http://youtu.be/HifbJHQcR-0


您看了就可以知道
為什麼同一台Web Server上,大家都在用 Session["ID"]這個變數
卻不會混淆?

本篇文章回覆於2014-07-20 21:27
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.