0

我正在处理登录页面,我希望用户在登录时在 Welcome"X" 旁边看到他的名字。有没有办法在 html 中使用 asp.net 或 jquery 这样做?

非常感谢

4

3 回答 3

1

在登录 aspx 页面中,成功登录后设置会话变量:

session["userName"] = "userName";

并在下一页加载事件中使用欢迎文本在标签中显示相同的内容:

if( session["userName"]!=null)
    lblUserName.Text= "Welcome " + session["userName"].toString()

或者您可以在您的 aspx 页面中访问它,如下所示:

Welcome <%=Server.HtmlEncode(Session["userName"])%>

使用 .Net 4,您可能需要使用代码块

Welcome <%:Session["userName"]%>
于 2012-04-05T11:06:42.073 回答
1

这是流程可以工作的一种方式:

  1. 用户登录,凭据通过 POST 发送到服务器 (ASP)
  2. ASP 使用数据库检查凭据以确保用户/密码组合实际上是“好的”
  3. ASP 为该用户启动一个“会话”
  4. ASP 现在将它们重定向到欢迎/登录/主页
  5. 欢迎/登录/主页是一个新的 ASP(脚本?),它执行以下操作:
    1. 使用存储在会话中的用户名在数据库中查找用户名(类似于SELECT name FROM Users WHERE username = \' . session["username"] . '\''
    2. 使用我们刚刚从数据库中获得的用户名输出动态 html

我对 ASP 不太熟悉,很抱歉没有发布任何代码,但这是我在 PHP 中所做的。从您的问题来看,您似乎不太熟悉客户端和服务器端之间的区别,我认为这些步骤将为您指明正确的方向,以便您能够通过谷歌搜索您正在寻找的内容。

于 2012-04-05T11:10:56.940 回答
1

您可以使用 aLoginStatus 来显示用户名。您通过 获得UserName当前登录用户的Membership.GetUser().ToString()

http://msdn.microsoft.com/en-us/library/ms178332.aspx

LoginStatus1.LogoutText = "Logout: " +  Membership.GetUser().ToString();  
于 2012-04-05T11:22:19.673 回答