此文是小白在学习张晨光老师的视频教学<<Asp.Net WEB服务器编程技术>>中做的学习笔记,一些知识点也是跟着教程走的,大家也可以去老师的主页去学习,谢谢大家.
这一篇要练习的是,如下课程的代码:
在母版页中的导航栏增加如下代码:
<header class="d-flex justify-content-center py-3 bg-linear justify-content-lg-start"> <img alt="" src="img/music.png" style="width:50px;height:50px;margin-left:20px;margin-right:10px" /><span style="font-size:30px;color:#0a58ca;margin-right:150px;">薄雾音乐</span> <ul class="nav nav-pills"> <li class="nav-item"><a href="main.aspx" class="nav-link" id="main" >发现音乐</a></li> <li class="nav-item"><a href="#" class="nav-link ">我的主页</a></li> <li class="nav-item"><a href="user_center.aspx" class="nav-link" id="center">个人中心</a></li> <li class="nav-item"><a href="#" class="nav-link ">FAQs</a></li> <li class="nav-item"><a href="#" class="nav-link ">About</a></li> </ul> <%--新增的代码--%> <div style="padding-left:35%"> <a href="#" class="d-block link-dark text-decoration-none dropdown-toggle" id="dropdownUser1" data-bs-toggle="dropdown" aria-expanded="false"> <%--这里设置了他的默认图片,在aspx中,要被后端找到,需要添加runat="server"属性,不然会报错--%> <img id="user_photos" src="img/_用户.png" alt="mdo" width="32" height="32" class="rounded-circle" runat="server"> </a> <ul class="dropdown-menu text-small" aria-labelledby="dropdownUser1"> <li><a class="dropdown-item" href="#">New project...</a></li> <li><a class="dropdown-item" href="#">Settings</a></li> <li><a class="dropdown-item" href="#">Profile</a></li> <li><hr class="dropdown-divider"></li> <li><a class="dropdown-item" href="#">Sign out</a></li> </ul> </div> </header>
//在btn_sub_Click (登录按钮点击事件)里添加如下代码 //读取用户 if (resilc > 0) { //将用户名绑定到Session Session["userName"] = userName.Text.ToString(); //新增代码 //新添加用户图片到Session string sqluser = "SELECT * FROM user_all WHERE user_name=?name AND user_pwd=?pwd"; DataTable dt= ToolMysqlDate.executTable(sqluser, ht); Session["user_photo"] = dt.Rows[0]["u_photo"].ToString(); //Response是服务器发出的响应,耗费资源,服务器的内存和网络的带宽 //Response.Redirect("index.aspx"); ScriptManager.RegisterStartupScript(UpdatePanel1, typeof(UpdatePanel), "ok_login", "/*alert('您已成功登录!');*/location.href='Main.aspx'", true); } else { //Response.Write("<script>alert('您输入的账户或密码有误,请核对后输入!!!')</script>"); ScriptManager.RegisterStartupScript(UpdatePanel1, typeof(UpdatePanel), "error_login", "alert('您输入的账户或密码有误,请核对后输入!!!')", true); }
引用:
//引用,读取母版页的HTML控件 using System.Web.UI.HtmlControls;
代码:
if (!IsPostBack) { Bindlist(); //绘制图片 //使用模板页上的控件 if (Session["user_photo"] != null) { //Master.FindControl读取母版页的控件的ID HtmlImage user_img = (HtmlImage)Master.FindControl("user_photos"); //赋值图片路径 user_img.Src= Session["user_photo"].ToString(); } }
在未登录之前:
登录后,头像会改变为用户的头像: