1.问题提出

   利用session内置对象,设计并实现一个简易的购物车,要求如下:

    1)利用用户名和密码,登录进入购物车首页

    2)购物首页显示登录的用户名以及该用户是第几位访客。(同一用户的刷新应该记录为1次)

    3)购物页面分为两个部分:家用电器和运动系列,选择商品种类进行购物。

    4)在每个具体的购物页中,如果用户已经选择了商品,当再次进入到该页时要显示已选中的商品。

    5)选好商品可以查看购物车,购物车中有继续购物,清空购物车。

2.设计实现思路

    1)登录

 protected void Button1_Click(object sender, EventArgs e)
{
string a = TextBox1.Text;
string b = TextBox2.Text; if (a.Equals("yitou") && b.Equals(""))
{
Application["name"] = TextBox1.Text;
Response.Redirect("welcome.aspx");
} }

界面设计

2)web.config中设置session

  在Global.asax中设置初始访问次数为0。利用session_start,保证用户数登录加1.

  void Application_Start(object sender, EventArgs e)
{
// 在应用程序启动时运行的代码
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
Application["count"] = ;
}
void Session_Start(object sender, EventArgs e)
{
Application["count"] = (int)Application["count"] + ;
}

     welcome.asp

 protected void Page_Load(object sender, EventArgs e)
{ string s = Application["name"].ToString();
Response.Write("欢迎" + s + "登录该页面,您是第"+Application["count"].ToString()+"个用户"); }
protected void Button1_Click(object sender, EventArgs e)
{
if (RadioButton1.Checked)
{
Server.Transfer("goods.asp");
}
if (RadioButton2.Checked)
{
Server.Transfer("sports.asp");
}
}

界面设计

    3)如果选择运动界面

    4)在每个具体的购物页中,如果用户已经选择了商品,当再次进入到该页时要显示已选中的商品。

    

    5)选择好商品,可以查看购物车中的内容:

 protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = "电器:";
Label2.Text = "运动:";
int num=;
List<string> str = (List<string>)Session["goods"];
if (str != null)
{
for (int i = ; i < str.Count; i++)
{
Label1.Text += " " + str[i];
}
}
else num++;
List<string> sports = (List<string>)Session["sports"];
if (sports != null)
{
for (int i = ; i < sports.Count; i++)
{
Label2.Text += " " + sports[i];
}
}
else num++;
if (num == )
{
Label3.Text = "购物车是空的,快去购物"; }
else
Label3.Text = "购物车里面有:";
}

    6)查看购物车时,如果没有购物,则会给予提示。

清空购物车:

 protected void Button1_Click(object sender, EventArgs e)
{
Label3.Text = "购物车是空的,快去购物";
Label1.Text = "";
Label2.Text = "";
}

3.总结

  利用session存储对象,后期再修改一下做成数据库的。

【ASP】session实现购物车的更多相关文章

  1. ASP Session的功能的缺陷(进程外的Session)

    目前ASP的开发人员都正在使用Session这一强大的功能,但是在他们使用的过程中却发现了ASP Session有以下缺陷: 进程依赖性:ASP Session状态存于IIS的进程中,也就是ineti ...

  2. ASP Session的功能的缺陷以及解决方案

    转http://www.cnblogs.com/jhy55/p/3376925.html 目前ASP的开发人员都正在使用Session这一强大的功能,但是在他们使用的过程中却发现了ASP Sessio ...

  3. 会话技术之Session(购物车加入、查看和清空)

    会话技术之Session session:服务器端会话技术 当我们第一次访问的服务器的时候,服务器获取id, 能获取id 要拿着这个id去服务器中查找有无此session 若查找到了:直接拿过来将数据 ...

  4. session实现购物车

    为实现简单的购物功能(购物车添加.账户查看.购物车商品删除.实时的购物商品数量及价格的计算显示.购物车商品数量可手动输入等),用session实现了一简单的以php语言为基础.连接MySQL数据库的购 ...

  5. Session 简单购物车

    package session.test; import java.io.IOException; import java.io.PrintWriter; import java.util.Linke ...

  6. 11月14日用AJAX、PHP、SESSION做购物车

    购物车网页代码 1.登录界面login.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ...

  7. asp - Session

    Session[]就是缓存,默认的类型是Object,就是说无论你把什么值赋给Session[],都是会变成Object类型的数据,空说没用,你也别看技术文献里面生涩的解释,我举个例子吧:比如说页面P ...

  8. asp.net 之 购物车

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  9. ajax、PHP、session做购物车

    购物车网页代码 1.登录界面login.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ...

随机推荐

  1. LeetCode 9. Palindrome Number(c语言版)

    题目: Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same ...

  2. 关于form-checkbox 必填项无效的错误

    校验规则要写在一个form里 检查data,给个默认值. 否则刚进去错误提示不显示. 其次,要加 type 类型,注意大小写 触发类型为 change .

  3. P2255 [USACO14JAN]记录奥林比克

    P2255 [USACO14JAN]记录奥林比克 题目描述 农民约翰热衷于所有寒冷天气的运动(尤其是涉及到牛的运动), 农民约翰想录下尽可能多的电视节目. 为moolympics电视时间表由N个不同的 ...

  4. Niagara帮助文档资料整理

    1.任何软件额发布都会有说明文档,有的不会附具体实践的操作步骤,存在不懂得问题一般可以通过查看榜文文档解决问题 一些软件的帮助文档是一PDF格式存储在软件安装的目录下面,如Niagar workben ...

  5. 学习笔记_J2EE_SpringMVC_02_注解配置

    SpringMVC注解配置 1.测试环境: 名称 版本 备注 操作系统 Windows10 专业版1809X64   WEB服务器 Tomcat 8.5 X64   浏览器 Google Chrome ...

  6. C++中的继承(3)作用域与重定义,赋值兼容规则

    1.作用域与重定义(同名隐藏) 一样的,先上代码 1 class A 2 { 3 public: 4 int a_data; 5 void a() 6 { 7 cout << " ...

  7. muduo资料

    muduo资料 muduo(一)

  8. [原创]SecureCRT终端软件连接VMware Workstation Pro虚拟机

    Step1:检查主机的桥接有没有禁用 Step2:进入Ubuntu系统,进入到Ubuntu下,先查看Ubuntu虚拟机的IP配置,打开终端(Ctrl+Alt+T),通过ifconfig命令查看,可以看 ...

  9. ERROR Fatal error during KafkaServer startup. Prepare to shutdown (kafka.server.KafkaServer)

    1.之前搭建的kafka,过了好久,去启动kafka,发现报如下下面的错误,有错误就要解决了. 然后参考:https://blog.csdn.net/hello_world_qwp/article/d ...

  10. pyqt5与QML开发小结

    遇见的坑 qt 5.11 与 qt 5.12 中Qquick的差异还是蛮大的,由开发环境:Pyqt5.11 + Qt5.12 部署到 Pyqt5.11 + Qt5.11时遇到以下问题: 1.当一个It ...