后台:using System;
public partial class Default21 : System.Web.UI.Page
{
public DB db = new DB(); string selSql = "select count(username) from user where name=@username and pwd=@userpwd";
string updateSql = "update product set [count]=[count]+1 where id=@id";
string pram_id = "@id";
string parm_name = "@username";
string parm_pwd = "@userpwd";
string dmsg;
int did, dcount;
string dname, dimage;
string dprice;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CartData();
if (Session["Cart"] == null)
{ CreateCart();
}
if (Session["Cart"] != null)
{ HaveCart();
}
}
Total();
}
protected void CreateCart()
{
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("id", typeof(int)));
dt.Columns.Add(new DataColumn("name", typeof(string)));
dt.Columns.Add(new DataColumn("price", typeof(string)));
dt.Columns.Add(new DataColumn("count", typeof(float)));
dt.Columns.Add(new DataColumn("image", typeof(string)));
dt.Columns.Add(new DataColumn("msg", typeof(string)));
dr = dt.NewRow();
dr["id"] = did;
dr["name"] = dname;
dr["price"] = dprice;
dr["count"] = dcount;
dr["image"] = dimage;
dr["msg"] = dmsg;
dt.Rows.Add(dr);
Session["Cart"] = dt;
gvCart.DataSource = dt;
gvCart.DataBind();
}
protected void CartData()
{
string selSql2 = "select * from product where id=@id"; did = int.Parse(Request.QueryString["uid"].ToString()); OleDbParameter parms = new OleDbParameter(pram_id, OleDbType.Integer);
parms.Value = did;
OleDbDataReader odr = db.ExecuteReader(db.sqlConn, CommandType.Text, selSql2, parms);
while (odr.Read())
{
dprice = odr["price"].ToString();
dname = odr["name"].ToString();
dmsg = odr["msg"].ToString();
dimage = odr["imageUrl"].ToString();
} }
public void HaveCart()
{
DataTable dt = new DataTable();
dt = (DataTable)Session["Cart"];
int count = dt.Rows.Count;
int i = 0;
bool isHave = false;
while (i < count && !isHave)
{
if (did == int.Parse(dt.Rows[i][0].ToString()))
{
isHave = true;
}
else
{
i++;
} }
if (isHave)
{
DataRow oldDr;
oldDr = dt.Rows[i];
oldDr["count"] = float.Parse(oldDr["count"].ToString()) + 1;
oldDr["price"] = float.Parse(oldDr["count"].ToString()) * float.Parse(oldDr["price"].ToString());
}
else
{
DataRow newDr;
newDr = dt.NewRow();
newDr["id"] = did;
newDr["name"] = dname;
newDr["price"] = dprice;
newDr["count"] = 1;
newDr["image"] = dimage;
newDr["msg"] = dmsg;
dt.Rows.Add(newDr);
}
gvCart.DataSource = dt;
gvCart.DataBind();
}
protected void gvCart_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
gvCart.PageIndex = e.NewPageIndex;
HaveCart(); }
public partial class Default21 : System.Web.UI.Page
{
public DB db = new DB(); string selSql = "select count(username) from user where name=@username and pwd=@userpwd";
string updateSql = "update product set [count]=[count]+1 where id=@id";
string pram_id = "@id";
string parm_name = "@username";
string parm_pwd = "@userpwd";
string dmsg;
int did, dcount;
string dname, dimage;
string dprice;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CartData();
if (Session["Cart"] == null)
{ CreateCart();
}
if (Session["Cart"] != null)
{ HaveCart();
}
}
Total();
}
protected void CreateCart()
{
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("id", typeof(int)));
dt.Columns.Add(new DataColumn("name", typeof(string)));
dt.Columns.Add(new DataColumn("price", typeof(string)));
dt.Columns.Add(new DataColumn("count", typeof(float)));
dt.Columns.Add(new DataColumn("image", typeof(string)));
dt.Columns.Add(new DataColumn("msg", typeof(string)));
dr = dt.NewRow();
dr["id"] = did;
dr["name"] = dname;
dr["price"] = dprice;
dr["count"] = dcount;
dr["image"] = dimage;
dr["msg"] = dmsg;
dt.Rows.Add(dr);
Session["Cart"] = dt;
gvCart.DataSource = dt;
gvCart.DataBind();
}
protected void CartData()
{
string selSql2 = "select * from product where id=@id"; did = int.Parse(Request.QueryString["uid"].ToString()); OleDbParameter parms = new OleDbParameter(pram_id, OleDbType.Integer);
parms.Value = did;
OleDbDataReader odr = db.ExecuteReader(db.sqlConn, CommandType.Text, selSql2, parms);
while (odr.Read())
{
dprice = odr["price"].ToString();
dname = odr["name"].ToString();
dmsg = odr["msg"].ToString();
dimage = odr["imageUrl"].ToString();
} }
public void HaveCart()
{
DataTable dt = new DataTable();
dt = (DataTable)Session["Cart"];
int count = dt.Rows.Count;
int i = 0;
bool isHave = false;
while (i < count && !isHave)
{
if (did == int.Parse(dt.Rows[i][0].ToString()))
{
isHave = true;
}
else
{
i++;
} }
if (isHave)
{
DataRow oldDr;
oldDr = dt.Rows[i];
oldDr["count"] = float.Parse(oldDr["count"].ToString()) + 1;
oldDr["price"] = float.Parse(oldDr["count"].ToString()) * float.Parse(oldDr["price"].ToString());
}
else
{
DataRow newDr;
newDr = dt.NewRow();
newDr["id"] = did;
newDr["name"] = dname;
newDr["price"] = dprice;
newDr["count"] = 1;
newDr["image"] = dimage;
newDr["msg"] = dmsg;
dt.Rows.Add(newDr);
}
gvCart.DataSource = dt;
gvCart.DataBind();
}
protected void gvCart_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
gvCart.PageIndex = e.NewPageIndex;
HaveCart(); }
{
Session["Cart"] = null;
Session.Remove("Cart");
Response.Redirect("Default.aspx");
}
protected void gvCart_RowDeleting(object sender, GridViewDeleteEventArgs e)
{ DataTable dt = new DataTable();
dt = (DataTable)Session["Cart"];
dt.Rows[e.RowIndex].Delete();
Session["Cart"] = dt;
gvCart.DataSource = dt;
gvCart.DataBind();
Total(); } protected void gvCart_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
string selSql2 = "select * from product where id=@id";
string pprice = "";
// did = int.Parse(Request.QueryString["uid"].ToString());
string idvalue = ((HtmlInputHidden)gvCart.Rows[e.RowIndex].FindControl("id_1")).Value;
did = int.Parse(idvalue);
OleDbParameter parms = new OleDbParameter(pram_id, OleDbType.Integer);
parms.Value = did;
OleDbDataReader odr = db.ExecuteReader(db.sqlConn, CommandType.Text, selSql2, parms);
while (odr.Read())
{
pprice = odr["price"].ToString(); }
DataTable dt = new DataTable();
float sum = 0;
dt = (DataTable)Session["Cart"];
// int idT = int.Parse(Request.QueryString["uid"].ToString());
int idT = int.Parse(idvalue);
DataSet ds = db.dbo("select * from product where id=" + idT, "pm");
string countvalue = ((HtmlInputText)gvCart.Rows[e.RowIndex].FindControl("textfield2")).Value;
dt.Rows[e.RowIndex]["count"] = float.Parse(countvalue); // Response.Write("<script>alert('" + dt.Rows[e.RowIndex]["count"] + "')</script>");
dt.Rows[e.RowIndex]["price"] = float.Parse(pprice) * float.Parse(dt.Rows[e.RowIndex]["count"].ToString());
GridViewRow gvr;
for (int i = 0; i < gvCart.Rows.Count; i++)
{
gvr = gvCart.Rows[i];
string price3 = ((Label)gvr.FindControl("price2")).Text; sum += float.Parse(price3); }
zongjia.Text = sum.ToString();
Session["Cart"] = dt;
gvCart.DataSource = dt;
gvCart.DataBind();
Total();
} protected void qu_Click(object sender, ImageClickEventArgs e)
{
GridViewRow gvr;
string cus;
Random rd = new Random();
int rdid = rd.Next(1, 1000);
string orderid = DateTime.Now.ToString("yyyymmddhhmmss") + rdid;
Session["orderid"] = orderid;
string insSql = "insert into [orders]([name], [price], [count], proid, orderid, buyname,beizhu) values (@name, @price, @count, @proid, @orderid, @buyname,@beizhu)"; string p_name = "@name", p_price = "@price", p_count = "@count", p_pid = "@proid", p_oid = "@orderid", p_buy = "@buyname",p_beizhu="@beizhu";
if (Session["user"] != null)
{
for (int i = 0; i < gvCart.Rows.Count; i++)
{
gvr = gvCart.Rows[i];
string name3 = ((Label)gvr.FindControl("name2")).Text;
string id3 = ((Label)gvr.FindControl("id2")).Text;
string price3 = ((Label)gvr.FindControl("price2")).Text;
string count3 = ((HtmlInputText)gvr.FindControl("textfield2")).Value;
OleDbParameter[] prams = new OleDbParameter[7];
prams[0] = new OleDbParameter(p_name, OleDbType.VarChar);
prams[0].Value = name3;
prams[1] = new OleDbParameter(p_price, OleDbType.VarChar);
prams[1].Value = price3;
prams[2] = new OleDbParameter(p_count, OleDbType.VarChar);
prams[2].Value = count3;
prams[3] = new OleDbParameter(p_pid, OleDbType.Integer);
prams[3].Value = id3;
prams[4] = new OleDbParameter(p_oid, OleDbType.VarChar);
prams[4].Value = orderid;
prams[5] = new OleDbParameter(p_buy, OleDbType.VarChar);
prams[5].Value = Session["user"].ToString();
prams[6] = new OleDbParameter(p_beizhu,OleDbType.VarChar);
prams[6].Value = beizhu.Value;
db.ExecuteNonQuery(db.sqlConn, CommandType.Text, insSql, prams);
}
Session["Cart"] = null;
Session.Remove("Cart");
Response.Redirect("Choose.aspx?orderid=" + orderid.ToString());
}
else
{
Response.Redirect("User.aspx");
} }
protected void Total()
{
float sum = 0;
GridViewRow gvr;
for (int i = 0; i < gvCart.Rows.Count; i++)
{
gvr = gvCart.Rows[i];
string price3 = ((Label)gvr.FindControl("price2")).Text;
sum += float.Parse(price3);
}
zongjia.Text = sum.ToString();
}
}
真的很急,希望大家帮下我...
Line 46: {
Line 47: int id = int.Parse(Request.QueryString["id1"].ToString());
Line 48: ds = db.dbo("select * from product where type2="+id,"product");
Line 49: // DataList1.DataSource = ds;