導航:首頁 > 萬維百科 > vs設計登錄網頁

vs設計登錄網頁

發布時間:2020-10-01 04:20:03

1、關於用vs2010製作網頁(我是菜鳥。。)

選擇c#開發設置,在vs2010中也可以製作網站,但是比較麻煩。建議你用dreamwaver就能做html網頁,這款工具適合初學者。

2、我要用vs2010做一個用戶登錄的網頁,可以是asp,也可以是asp.net,但要包含資料庫,我是個菜鳥,求大蝦賜教

,先建立一個資料庫UserTest。
2,在裡面建立一個表叫UsersTable,設計表,建立三個列:u_id, u_name, u_pwd。
3,u_id是int數據類型,自增1;u_name是nvarchar類型,長度12;u_pwd是varchar類型,長度12,然後保存該表。
4,打開表,在第一行u_name輸入「abc」,u_pwd輸入「abc」。關閉表。
5,打開VS,新建一個Web項目。雙擊默認的default.aspx頁面,然後將 <body>... </body>替換成下面的代碼:

HTML code
<!-- 替換-->
<body style="margin: 0px">
<form id="form1" runat="server">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; height: 50px">
<tr>
<td style="vertical-align: middle; width: 50%; text-align: center; font-weight: bold; font-size: 25px; color: #003366; font-family: Arial;">yunleilian 的登錄示範</td>
<td style="vertical-align: middle; text-align: left">
<asp:Panel ID="pnlLogin" runat="server" Height="30px" Width="100%">
用戶名:<asp:TextBox ID="txbUserName" runat="server"></asp:TextBox>密碼:
<!-- 對於密碼TextBox,應把TextMode屬性設置為Password,這樣輸入的值會以****形式出現,保護密碼在輸入時不被別人看到 -->
<asp:TextBox ID="txbUserPassword" runat="server" TextMode="Password"></asp:TextBox>
<asp:Button ID="btnLogin" runat="server" Text="登錄" OnClick="btnLogin_Click" /></asp:Panel>
<asp:Panel ID="pnlWelcome" runat="server" Height="30px" Width="100%">
<asp:Label ID="lblWelcome" runat="server"></asp:Label>
<asp:Button ID="btnQuit" runat="server" CausesValidation="False" Text="退出" Width="146px" OnClick="btnQuit_Click" /></asp:Panel>
</td>
</tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; height: 100px">
<tr>
<td style="vertical-align: middle; text-align: center">
<!-- 這個用來顯示登錄是否成功的信息 -->
<asp:Label ID="lblMessage" runat="server" ForeColor="#C00000"></asp:Label></td>
</tr>
</table>
</form>
</body>
<!-- 替換結束 -->

6,按F7,進入代碼視圖,在Page_Load()里寫下面的代碼:

C# code
protected void Page_Load(object sender, EventArgs e)
{
//確保頁面是第一次被訪問
if (!Page.IsPostBack)
{
CheckPageStatus();
}
}

//通過判斷Session["UserName"]是否為空檢查頁面是否已登錄(登錄成功時會為Session["UserName"]注入值,就不空了。。否則就認為沒有登錄)。
private void CheckPageStatus()
{
if (Session["UserName"] != null)
{
pnlLogin.Visible = false;
pnlWelcome.Visible = true;
lblWelcome.Text = "歡迎登錄," + Session["UserName"].ToString() + " 同志";
}
else
{
pnlWelcome.Visible = false;
pnlLogin.Visible = true;
}

//這個用來接收登錄或退出後的信息。個人習慣,你也可以不這么做。
if (Session["Message"] != null)
{
lblMessage.Text = Session["Message"].ToString();
Session.Remove("Message");
}
else
lblMessage.Text = "";
}

7,先告一段落,按F5運行下,看看效果,你會發現當沒有登錄時,「退出」那部分沒有顯示。真神奇啊。
8,然後關閉這個IE頁面,按VS左下角的「設計」,切換到設計視圖。
9,雙擊設計視圖的「登錄」按鈕,為它編寫登錄代碼如下:

C# code
protected void btnLogin_Click(object sender, EventArgs e)
{
//下面的登錄方法只是我的習慣而已,我常用DataTable做所有的事情。建議你不要依賴它……否則會被人笑話的……登錄的好方法有很多,參考下就好了。
string strConnection = "SERVER=(local);DATABASE=UserTest;UID=sa;PWD=";//PWD=後面寫上你的SQL SERVER 的 sa密碼。
System.Data.SqlClient.SqlConnection cn = new System.Data.SqlClient.SqlConnection(strConnection);
//SQL 語句會吧?不會沒辦法,照抄吧。
string strSql = "SELECT * FROM UsersTable WHERE u_name='" + txbUserName.Text + "' AND u_pwd='" + txbUserPassword.Text + "'";
//SqlDataAdapter這東西有什麼用,建議你去查MSDN。
System.Data.SqlClient.SqlDataAdapter da = new System.Data.SqlClient.SqlDataAdapter(strSql, cn);
System.Data.DataTable dt = new DataTable();
da.Fill(dt);

if (dt.Rows.Count > 0)
{
Session["UserName"] = dt.Rows[0]["u_name"].ToString();
Session["Message"] = "登錄成功!";
Response.Redirect("default.aspx");
}
else
{
Session["Message"] = "登錄失敗。請重新登錄。";
Response.Redirect("default.aspx");
}
}

10,再按F5測試下,在用戶名和密碼內輸入123,按下「登錄」按鈕,會提示登錄失敗。如果都輸入abc,就會提示登錄成功。因為資料庫內只有abc這個用戶。
11,關閉IE頁面,最後我們做退出。
12,回到設計視圖,雙擊「退出」按鈕,為它編寫下面的代碼:

C# code
protected void btnQuit_Click(object sender, EventArgs e)
{
if (Session["UserName"] != null)
{
Session.Remove("UserName");
Session["Message"] = "退出成功,歡迎您再來啊";
Response.Redirect("default.aspx");
}
}

13,按F5運行,登錄成功後,按「退出」按鈕,系統會提示已經退出。
14,為了驗證用戶是否已登錄,你需要在所有需要登錄的頁面的Page_Load()內添加:

C# code

if(Session["UserName"]!=null)
//用戶可以訪問。
else
//用戶不能訪問,扔回到登錄頁面:Response.Redirect("login.aspx");

15,基本如此,搞定。

3、VS如何設計一個登錄界面

將啟動程序設計為登錄窗體啊。你這VS說得太不明確吧,各種語言呢。在登錄按鈕下面判斷語句啊。以下為C#版本,部分代碼需修改
private void btn_login_Click(object sender, EventArgs e)
{
string str;
if (this.txt_user.Text == "")
{
this.errorProvider1.SetError(txt_user, "用戶名不能為空");
}
if (this.txt_password.Text == "")
{
this.errorProvider1.SetError(txt_password, "密碼不能為空");
}
if (this.txt_user.Text != "" && this.txt_password.Text != "")
{
clscommand User = new clscommand();
clsJiami des = new clsJiami();
str =des.EncryptDES(txt_password.Text.Trim());
string sql = "select * from login where userID='" + txt_user.Text + "' and password='" + str + "'";

if (User.LoginConfirm(sql))
{
frm_main frm = new frm_main();

this.Hide();
frm.Show();

}

}
}

與vs設計登錄網頁相關的知識