• 设计一个简单的购物车程序


    【问题描述】

    网上购物时目前非常流行的购物方式,二购物车是网上购物系统必需的构件。

    设计一个简单的购物车程序。 该案例提供了两类不同的商品,不同类型的商品需要在不同的网页上浏览,并添加到购物车中,最后显示购物车中所选购的商品。

    【分析】

    从所给出的需求分析,该系统需要3个页面,并且三个页面共享购物信息,直到购物结束。显然,该购物过程是在session范围内完成的,需要使用session对象实现信息的共享。

    【代码编写】

    分为两个选购页面(meat和ball),一个显示购物车信息页面(display)

    meat的主要代码

         
         各种大肉大甩卖,一律1块,买一送一啦!!!:<br>
         <form action="meat.jsp" method="post">
            <p> <input type="checkbox" name="c1" value="回锅肉">回锅肉&nbsp;
                <input type="checkbox" name="c2" value="东坡肉">东坡肉&nbsp;
                 <input type="checkbox" name="c3" value="五花肉">五花肉&nbsp;
            </p>
            <p> <input type="submit" value="提交" name="B1">
               <a href="ball.jsp">买点别的吧!</a> &nbsp;
               <a href="display.jsp">查看购物车</a> 
            </p>

    运行结果:

    ball的主要代码

       
         各种球类大甩卖,清仓啦!买二送一啦!!!:<br>
         <form action="ball.jsp" method="post">
            <p> <input type="checkbox" name="b1" value="篮球">篮球&nbsp;
                <input type="checkbox" name="b2" value="足球">足球&nbsp;
                 <input type="checkbox" name="b3" value="羽毛球">羽毛球&nbsp;
            </p>
            <p> <input type="submit" value="提交" name="x1">
               <a href="meat.jsp">买点别的吧!</a> &nbsp;
               <a href="display.jsp">查看购物车</a> 
            </p>
          </form>

    运行结果:

    display的主要代码

     加入购物车的东西是:<br>
       <% request.setCharacterEncoding("utf-8");
         String str="";
         if(session.getAttribute("s1")!=null){
          str=(String)session.getAttribute("s1");
          out.println(str+"<br>");
          }
          if(session.getAttribute("s2")!=null){
          str=(String)session.getAttribute("s2");
          out.println(str+"<br>");
          }
          if(session.getAttribute("s3")!=null){
          str=(String)session.getAttribute("s3");
          out.println(str+"<br>");
          }
          if(session.getAttribute("s4")!=null){
          str=(String)session.getAttribute("s4");
          out.println(str+"<br>");
          }
          if(session.getAttribute("s5")!=null){
          str=(String)session.getAttribute("s5");
          out.println(str+"<br>");
          }
          if(session.getAttribute("s6")!=null){
          str=(String)session.getAttribute("s6");
          out.println(str+"<br>");
          }
        %>

    总结:其中主要用到的是sessiond的两种对象方法以及request方法

    Object getAttribute(String attribute)   用于获取指定名字的属性

    void setAttribute(String name,Object value) 用于设定指定名字的属性值,并把它存储在session对象中

  • 相关阅读:
    thinkphp5.0与thinkphp3.2之间的区别
    比较数组大小
    PHP语言开发微信公众平台(订阅号)之curl命令(补充)
    ThinkPHP3.2.3快速入门:基础篇
    phpcms利用表单向导创建留言板(可以回复)
    Vijos P1782 借教室 ( 前缀和&&差分序列)
    HDU2648:Shopping(DKBR_hash)
    Codeforces Round #375 (Div. 2)
    BestCoder Round #88
    Codeforces Round #373 (Div. 2)
  • 原文地址:https://www.cnblogs.com/ljp-yuban/p/7658484.html
Copyright © 2020-2023  润新知