网页间跳转
四種網頁間跳轉的方式
1、超鏈
2、Response.Redirect
3、Server.Transfer
4、PostBackUrl
http://localhost:2035/DataReceive.aspx?name=zhen&password=密碼
創建頁面????
?-? DataSend.aspx 添加超鏈接 鏈接地址:~/DataReceive.aspx?name=zhen&password=密碼
?<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<asp:HyperLink runat="server" NavigateUrl="DataReceive.aspx?name=zhen&password=密碼" Text="超鏈接查詢字符串傳遞參數" title="123456"></asp:HyperLink>
<br/>
<a href="DataReceive.aspx" target="_blank">超鏈接</a>
<br/>
<a href="DataReceive.aspx?name=zhen&password=密碼" title="傳遞參數">超鏈接查詢字符串</a>
</asp:Content>
?- DataReceive.aspx
? 添加:
?<asp:Panel ID="pnlReceive" runat="server" GroupingText="數據接收">
??? <asp:Literal runat="server" ID="ltlName" Text="姓名"></asp:Literal>
??? <asp:TextBox ID="tbxName" runat="server"></asp:TextBox>
??? <br />
??? <asp:Literal runat="server" ID="ltlPassword" Text="密碼"></asp:Literal>
??? <asp:TextBox ID="tbxPassword" runat="server"></asp:TextBox>
??? </asp:Panel>
?- DataSend.aspx
?- 添加button 雙擊
<asp:Button runat="server" ID="btnRedirect" Text="Response.Redirect"
??????? οnclick="btnRedirect_Click" />
DataSend.aspx.cs
protected void btnRedirect_Click(object sender, EventArgs e)
??????? {
??????????? Response.Redirect("DataReceive.aspx?name=zhen&password=密碼");
??????? }
DataSend.aspx.cs
protected void btnRedirect_Click(object sender, EventArgs e)
??????? {
??????????? string url =
??????????? string.Format("DataReceive.aspx?name={0}&password={1}", HttpUtility.UrlEncode("name"), HttpUtility.UrlEncode("密碼"));
??????????? Response.Redirect(url);
??????? }
url? 變量
DataReceive.aspx.cs
?protected void Page_Load(object sender, EventArgs e)
??????? {
??????????? tbxName.Text = Request.QueryString["name"];
??????????? tbxPassword.Text =Request.QueryString["password"];
??????? }
DataSend.aspx.cs
protected void btnRedirect_Click(object sender, EventArgs e)
??????? {
??????????? string url =
??????????? string.Format("DataReceive.aspx?name={0}&password={1}", HttpUtility.UrlEncode(tbxName.Text), HttpUtility.UrlEncode(tbxPassword.Text));
??????????? Response.Redirect(url);
??????? }
把Panel 拷貝到DataSend.aspx 中 在button 前面加? </asp:Panel>
?
修改 DataReceive.aspx.cs
protected void Page_Load(object sender, EventArgs e)
??????? {
??????????? string strName = Request.QueryString["name"];
??????????? string strPassword = Request.QueryString["password"];
??????????? VerifyUser(strName, strPassword);
??????????? tbxName.Text = Request.QueryString["name"];
??????????? tbxPassword.Text =Request.QueryString["password"];
??????? }
??????? bool VerifyUser(string name, string post)
??????? {
??????????? //using System.Data.SqlClient;
??????????? //using System.Web.Configuration;
??????????? //利用 web.config 文件中保存的連接字符串,建立數據庫連接
??????????? using (SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["courseConnectionString"].ConnectionString))
??????????? {
??????????? //創建 數據命令對象 SqlCommand
??????????????? SqlCommand cmd = conn.CreateCommand();
???????????????
??????????????? cmd.CommandText = "SELECT COUNT (姓名) FROM[用戶]WHERE [姓名] = @name AND [密碼] =@psd ";
??????????????? //添加參數信息? //using System.Data;
??????????????? cmd.Parameters.Add("@name",SqlDbType.NVarChar,10,name);
??????????????? cmd.Parameters.Add("@pwd",SqlDbType.NVarChar,10,name);
??????????? }
??????????? return false;
??????? }
添加
<asp:Literal runat="server" ID="ltlresult" Text="驗證"/>
??? <asp:TextBox ID="tbxResult" runat="server" Text="尚未驗證"/>???
??? <br />
到DataReceive.aspx <asp:Panel ID="pnlReceive" runat="server" GroupingText="數據接收">下面
改為:return true;
//一元操作符 "++","--","!"
//二元操作符 "+","+","-"
//三元操作符 "?;"
???????????
??????????? string strName = Request.QueryString["name"];
??????????? string strPassword = Request.QueryString["password"];
????? 后加
??????????? //if (VerifyUser(strName, strPassword))
??????????? //{
???????????? //??? tbxResult.Text = "通過驗證";
??????????? //}
??????????? //else
??????????? //{
??????????? //??? tbxResult.Text = "驗證失敗";
??????????? //}???????????
??????? tbxResult.Text = VerifyUser(strName,strPassword)?"通過驗證":"驗證失敗";
??????? protected void Page_Load(object sender, EventArgs e)
??????? {
??????????? //調試
??????????? //tbxName.Text = "zhen";
??????????? //tbxPassword.Text = "123456";
??????? }
?
??????? protected void Page_Load(object sender, EventArgs e)
??????? {
??????????? string strName = Request.QueryString["name"];
??????????? string strPassword = Request.QueryString["password"];
??????????? //if (VerifyUser(strName, strPassword))
??????????? //{
??????????? //??? tbxResult.Text = "通過驗證";
??????????? //}
??????????? //else
??????????? //{
??????????? //??? tbxResult.Text = "驗證失敗";
??????????? //}
??????????? //一元操作符 "++","--","!"
??????????? //二元操作符 "+","+","-"
??????????? //三元操作符 "?;"
?????????? tbxResult.Text = VerifyUser(strName,strPassword)?"通過驗證":"驗證失敗";
??????????? //VerifyUser(strName, strPassword);
??????????? tbxName.Text = Request.QueryString["name"];
??????????? tbxPassword.Text =Request.QueryString["password"];
??????? }
??????? bool VerifyUser(string name, string pass)
??????? {
??????????? //using System.Data.SqlClient;
??????????? //using System.Web.Configuration;
??????????? //利用 web.config 文件中保存的連接字符串,建立數據庫連接
??????????? using (SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["courseConnectionString"].ConnectionString))
??????????? {
??????????? //創建 數據命令對象 SqlCommand
??????????????? SqlCommand cmd = conn.CreateCommand();
??????????????? //字符串拼接
??????????????? // cmd.CommandText = "SELECT COUNT (姓名) FROM [用戶帳戶] WHERE [姓名] = '"+ name +"' AND [密碼] = '"+ pass + "'";????????? 參數化查詢參數//
??????????????? cmd.CommandText = "SELECT COUNT([姓名]) FROM [用戶帳戶] WHERE [姓名] = @name AND [密碼] = @pwd ";
??????????????? //添加參數信息? //using System.Data;
??????????????? cmd.Parameters.Add("@name", SqlDbType.NVarChar, 10).Value = name ;
??????????????? cmd.Parameters.Add("@pwd", SqlDbType.NVarChar, 6).Value =pass;
??????????????? //打開數據連接
??????????????? conn.Open();
??????????????? // 讀取數據
??????????????? object obj = cmd.ExecuteScalar();
??????????????? int count = Convert.ToInt32(obj);
??????????????? //if(count == 1)
??????????????? //{
??????????????? //??? return true;
??????????????? //}
??????????????? //return true;
??????????????? return count == 1;
??????????? }
???????????
??????? }
瀏覽:改用戶名 密碼? 驗證通過
服務器連接
用戶賬戶 打開主表
柳文冰?123456
黃光曾?654321
王邦杰?234567
張碩毅?78901
陳兆鈞?234891
廖慧容?110022
龐君勉?998877
楊芳生?090807
曾明杰?234598
李培俊?987856
楊秀蓉?102938
程景西?928374
姜守孟?345678
廖麗娜?123987
馬旭初?289378
張修?676922
蔡佳玲?394856
張坤帆?928345
李鄧美?123857
張凌鳳?283756
轉載于:https://www.cnblogs.com/aibei/archive/2012/04/20/2459693.html
總結
- 上一篇: 中国专利电子申请网CPC客户端的安装教程
- 下一篇: 基于3DMM的三维人脸重建技术总结