问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

用visual studio2005做C#网站(.NET 2.0)

发布网友 发布时间:2022-09-21 07:37

我来回答

5个回答

热心网友 时间:2023-11-15 01:26

,先建立一个数据库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,基本如此,搞定。

热心网友 时间:2023-11-15 01:26

那地方放了LOGIN 好LABEL,LABEL的值为空
登陆成功把LOGIN隐藏,LABEL赋值“**用户,欢迎您”

热心网友 时间:2023-11-15 01:26

定义一个类来存储登陆的数据
然后调用就可以了

热心网友 时间:2023-11-15 01:27

他们说的太啰嗦了 让那个Login控件的属性Visble=false

热心网友 时间:2023-11-15 01:28

login 控件有个属性:VisibleWhenLogggedIn 把它改为false
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
临沂比较有名的男装品牌 呼伦贝尔市悦动网络科技有限公司怎么样? 呼伦贝尔中汇实业有限公司怎么样? 呼伦贝尔油玉不绝电子商务有限公司怎么样? 如何避免wps卡顿? 属鼠的男人找对象是属什么,属鼠的人和什么属相合 96年鼠的姻缘在哪年 属相相合年份运势提升 2024属鼠找对象属什么最佳 黑客攻击网站能报案吗 黑客攻击报案有用吗 如何利用Visual Studio创建管理ASP网页 保持清醒年轻的国王们什么梗 中学生什么病,需要动手术。而且可能会死 我妈妈得了脑囊虫病,我想知道这种病做手术有多大风险,会有生命危险吗?得了这种病后可以活多久啊? 得子宫肌瘤,在哪些情况下开刀等于救命? 糖尿病人做肝脏切除手术风险大吗?会有生命危险吗?术后有什么后遗症 什么胃病会做手术 而且危及到生命 新闻采编资格从业证的有效时间有限制吗? 哪里有卖坚果口味的沙琪玛? 怎么分辨沙琪玛的好坏? 萨琪玛有哪些品牌 保罗萨琪FRSXPOLO的衣服款式质量还好,价格怎么这么高? 请问一下jmmal00华为什么型号 美女与野兽结局如何 美女与野兽的结局是什么样的? 割绳子布盒第15关怎么过 哔哩哔哩的app基础组件可以删除吗 登不上去是怎么回事 登不上去的原因盘点 割绳子第8个盒子21和22关,第10个盒子10关,怎么过 割绳子第一季情人盒第九关怎么三星通过啊? 海桑老师期货真的厉害吗 葱浩丸子怎么做 做炸丸子怎么做好吃 话费冻结是什么意思 南宁那里有中金证券 内存条取下过了几个月坏了怎么回事? 乒乓球的握拍方法和攻球技巧 如何正确教育孩子? 比特币是什么币? 农商行惠民贷需要准备么材料 89.如何在b站自学画画? 应用的同义词 错位时空五四特别版有没有英文版 不能虚度此生的前一句是什么? 岁月无痕此生虚度是什么意思 记得诗中有一句:如果我能帮助一只纯洁的知更,重新回到鸟巢去见它的双亲,我就没有虚度此生 藏蓝色的衣服洗翻白了怎么办? 王成演过哪些电视 微信的意见和反馈 通过哪个回复? 秋季小西装如何进行时髦穿搭?