在学习JSP之后,很多人都会找个小模块来练手,比如完成购物程序就是一个很好的模块,那么我们应该如何用JSP完成购物程序呢?
下面是我用JSP和数据库做的购物车的源程序:
注意:
1、重新计费部分还没有做好,大家自己动手吧!
2、下一版本将用session做。
//shop_cart.jsp
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page session="true" %>
<%@ page language="java" import="java.sql.*" %>
<%
String product_type;
String action;
int product_id;
int curpage;
//商品类型
if (request.getParameter("product_type")==null){
product_type="all";
}else{
product_type=request.getParameter("product_type");
}
//页数和商品类型参数,可以在“继续购物”时返回到上次购物的页面
if (request.getParameter("curpage")==null){
curpage=1;
}else{
curpage=java.lang.Integer.parseInt(request.getParameter("curpage"));
}
//动作
if (request.getParameter("action")==null){
action="view";
}else{
action=request.getParameter("action");
}
//商品编号
if (request.getParameter("product_id")==null){
product_id=0;
}else{
product_id=java.lang.Integer.parseInt(request.getParameter("product_id"));
}
int bbb;
bbb=1;
Integer num = new Integer(bbb);
//商店编号
session.putValue("shop_id",num);
//顾客username
session.putValue("guest_name","asp2001");
String guest_name=(String)session.getValue("guest_name");
Integer shop_id=(Integer)session.getValue("shop_id");
java.lang.String sql;
java.sql.ResultSet rs;
if (action.compareTo("add")==0) {
sql="select cart_quantity from shop_cart where cart_shop_id=" + shop_id
+ " and cart_guest_id='" + guest_name + "' and cart_product_id=" + product_id ;
rs = bka.executeQuery(sql);
if (rs.next()){
int cart_quantity;
cart_quantity=java.lang.Integer.parseInt(rs.getString("cart_quantity"))+1;
sql="update shop_cart set cart_quantity=" + cart_quantity + " where cart_shop_id="
+ shop_id + " and cart_guest_id='" + guest_name + "' and cart_product_id=" + product_id ;
rs = bka.executeQuery(sql);}
else
{
sql="insert into shop_cart (cart_shop_id,cart_guest_id,cart_product_id,cart_quantity) values ('" + shop_id + "','"
+ guest_name + "','" + product_id + "',1)";
rs = bka.executeQuery(sql);
}
}
if (action.compareTo("clear")==0) {
sql="delete from shop_cart where cart_shop_id=" + shop_id + " and cart_guest_id='" + guest_name + "'";
rs = bka.executeQuery(sql);
}
if (action.compareTo("delete")==0) {
sql="delete from shop_cart where cart_shop_id=" + shop_id + " and cart_guest_id='"
+ guest_name + "' and cart_product_id=" + product_id ;
rs = bka.executeQuery(sql);
}
%>
align="center"> | |
|
align="center">
商品名称 | 市场价 | 优惠价 | 数量 | 小计 | 定金比例 | 定金小计 | 删除 |
<%=product_name%> | <%=product_price%> | <%=product_discount%> | " size="3" value="<%=cart_quantity%>"> | <%=product_discount*cart_quantity%> | <%=product_first + "%"%> | <%=product_first*product_discount*cart_quantity/100.0%> | delete |
总计 | <%=total%> | ||||||
定金总计 | <%=total_first%> | ||||||
结余 | <%=total-total_first%> |
购物车为空!
新闻热点
疑难解答