?? makeorder.aspx.cs
字號:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
namespace SCard
{
/// <summary>
/// makeOrder 的摘要說明。
/// </summary>
public class makeOrder : System.Web.UI.Page
{
protected System.Web.UI.HtmlControls.HtmlImage myImg;
protected System.Web.UI.WebControls.Label lblPName;
protected System.Web.UI.WebControls.Label lblPFPrice;
protected System.Web.UI.WebControls.Label lblIsStock;
protected System.Web.UI.WebControls.TextBox txtName;
protected System.Web.UI.WebControls.TextBox txtEmail;
protected System.Web.UI.WebControls.TextBox txtPhone;
protected System.Web.UI.WebControls.DropDownList ddlNum;
protected System.Web.UI.WebControls.Label lblTotalPric;
protected System.Web.UI.WebControls.Button btnOK;
protected System.Web.UI.WebControls.Button btnClear;
protected System.Web.UI.WebControls.TextBox txtCheck;
protected System.Web.UI.WebControls.Label lblScript;
protected System.Web.UI.HtmlControls.HtmlForm Form1;
protected System.Web.UI.WebControls.LinkButton LinkButton1;
protected System.Web.UI.WebControls.LinkButton newCode;
protected System.Web.UI.WebControls.Label lblPNPrice;
protected System.Web.UI.WebControls.RegularExpressionValidator REVEmail;
private void Page_Load(object sender, System.EventArgs e)
{
Response.Buffer=true;
Response.ExpiresAbsolute=DateTime.Now.AddSeconds(-1);
Response.Expires=0;
Response.CacheControl="no-cache";
if( !IsPostBack )
{
if( Request.QueryString["id"]!=null && Request.QueryString["id"].ToString() != String.Empty )
{
string strID = Request.QueryString["id"].ToString();
strID = CleanString.htmlInputText( strID );
ViewState["ID"] = strID;
PData();
}
else
{
Response.Write("<script>");
Response.Write("alert('沒有這個商品!!!');");
Response.Write("</script>");
Response.Redirect("index.aspx");
return;
}
}
}
private void PData()//顯示相應(yīng)商品信息
{
string strID = ViewState["ID"].ToString();
DBConn myDB = new DBConn();
string sql = "select * from Products where PID=" + strID;
OleDbDataReader dr ;
try
{
dr = myDB.getDataReader( sql );
}
catch
{
Response.Write("<script>");
Response.Write("alert('沒有這個商品!!!');");
Response.Write("</script>");
Response.Redirect("index.aspx");
return;
}
if( dr.Read() )
{
string strPID="";
strPID = dr["PID"].ToString();
myImg.Src = "showPP.aspx?id=" + strPID;
lblPName.Text = dr["PName"].ToString();
lblPFPrice.Text = double.Parse( dr["PFPrice"].ToString() ).ToString("f2");
lblPNPrice.Text = double.Parse( dr["PNPrice"].ToString() ).ToString("f2");
lblTotalPric.Text = lblPNPrice.Text;//
ViewState["PCPrice"] = dr["PCPrice"].ToString();//
string strPStock = dr["PStock"].ToString();
if( Int32.Parse(strPStock) > 0 )
{
lblIsStock.Text = "[倉庫有貨]";
}
else
{
lblIsStock.Text = "[沒有存貨]";
btnOK.Enabled = false;
}
}
else
{
Response.Write("<script>");
Response.Write("alert('沒有這個商品!!!');");
Response.Write("</script>");
dr.Close();
myDB.Close();
Response.Redirect("index.aspx");
return;
}
dr.Close();
myDB.Close();
}
#region Web 窗體設(shè)計器生成的代碼
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 該調(diào)用是 ASP.NET Web 窗體設(shè)計器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 設(shè)計器支持所需的方法 - 不要使用代碼編輯器修改
/// 此方法的內(nèi)容。
/// </summary>
private void InitializeComponent()
{
this.ddlNum.SelectedIndexChanged += new System.EventHandler(this.ddlNum_SelectedIndexChanged);
this.btnOK.Click += new System.EventHandler(this.btnOK_Click);
this.btnClear.Click += new System.EventHandler(this.btnClear_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void ddlNum_SelectedIndexChanged(object sender, System.EventArgs e)
{
double dblNum = Int32.Parse(ddlNum.SelectedValue) * double.Parse(lblPNPrice.Text);
lblTotalPric.Text = dblNum.ToString("f2");
}
private void btnClear_Click(object sender, System.EventArgs e)
{
txtName.Text = "";
txtEmail.Text = "";
txtPhone.Text = "";
ddlNum.SelectedIndex = 0;
lblTotalPric.Text = lblPNPrice.Text;
txtCheck.Text = "";
}
private void btnOK_Click(object sender, System.EventArgs e)
{
string strID = ViewState["ID"].ToString();
string strName = txtName.Text.Trim();
string strEmail = txtEmail.Text.Trim();
string strPhone = txtPhone.Text.Trim();
string strNum = ddlNum.SelectedValue;
if( strName == String.Empty || strEmail == String.Empty )
{
Response.Write("<script>");
Response.Write("alert('請把必填項添上!!!');");
Response.Write("</script>");
return;
}
if( strName.Length < 2 && strName.Length > 15 )
{
Response.Write("<script>");
Response.Write("alert('請檢查姓名是否正確!!!');");
Response.Write("</script>");
return;
}
if( Session["CheckCode"] == null )
{
Response.Redirect("index.aspx");
return;
}
if( Session["CheckCode"].ToString() != txtCheck.Text.Trim() )
{
Response.Write("<script>");
Response.Write ("alert('輸入的驗證碼有誤!請重新輸入!')");
Response.Write ("</script>");
return;
}
//檢查庫存
DBConn myDB = new DBConn();
string mySql = "select PStock from Products where PID=" + strID;
OleDbDataReader mydr = myDB.getDataReader( mySql );
if( mydr.Read() )
{
int iPStock = Int32.Parse( mydr["PStock"].ToString() );
if( iPStock < int.Parse(strNum) )
{
Response.Write("<script>");
Response.Write("alert('庫存不足!!!現(xiàn)在庫存還有[ " + iPStock.ToString() + " ]');");
Response.Write("</script>");
return;
}
}
else
{
Response.Write("<script>");
Response.Write("alert('沒有這個商品!!!');");
Response.Write("</script>");
mydr.Close();
myDB.Close();
Response.Redirect("index.aspx");
return;
}
mydr.Close();
myDB.Close();
Order myOrder = new Order();
/*
if( Session["myOrder"] != null )
{
myOrder.setOID( ((Order)Session["myOrder"]).getOID() );
}
*/
myOrder.PID = strID;
myOrder.PName = lblPName.Text;
myOrder.PNum = strNum.ToString();
myOrder.PPrice = lblPNPrice.Text;
myOrder.TotalPrice = lblTotalPric.Text;
myOrder.TName = CleanString.htmlInputText( strName );
myOrder.Email = strEmail;
myOrder.Phone = CleanString.htmlInputText( strPhone );
if( ViewState["PCPrice"] != null)
{
myOrder.PCPrice = ViewState["PCPrice"].ToString();//
}
Session["myOrder"] = myOrder;
if( Session["SubmitCheck"] != null )
{
DateTime myDTime = (DateTime)Session["SubmitCheck"];
if( myDTime.AddMilliseconds(30000) > DateTime.Now )
{
Response.Write("<script>");
TimeSpan myTime = DateTime.Now - (DateTime)Session["SubmitCheck"];
Response.Write("alert('不能頻繁提交,請在" + (30-myTime.Seconds) + "秒后繼續(xù)!!!');");
Response.Write("</script>");
return;
}
}
Session["SubmitCheck"] = DateTime.Now;
Response.Redirect("orderinfo.aspx?key="+Server.UrlEncode("makeOrder.aspx?id=" + ViewState["ID"].ToString()));
}
private void btnNewCode_Click(object sender, System.EventArgs e)
{
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -