为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

网上书店系统

2017-10-08 50页 doc 111KB 24阅读

用户头像

is_270070

暂无简介

举报
网上书店系统网上书店系统 网上书店售书系统 系统功能 1、 系统功能概述 用户进入该网站后,可以浏览该网站的商品的内容,查询需要的商品的信息;用户注册登陆后,可以通过购物车选购商品,下订单;管理员可以管理货物和顾客的资料等。 2、 系统功能模块 网上书店 用找用书购用新图用 户密品本物户书片户 登码分查车管上上注 录类询理架传册 数据库设计 对于该网上书店,需要建立几个表的数据库 Member(该表用来记录注册用户的个人信息) 字段名 数据类型 说明 Logname char 登录名 Realname Char 真实姓...
网上书店系统
网上书店系统 网上书店售书系统 系统功能 1、 系统功能概述 用户进入该网站后,可以浏览该网站的商品的,查询需要的商品的信息;用户注册登陆后,可以通过购物车选购商品,下订单;管理员可以管理货物和顾客的资料等。 2、 系统功能模块 网上书店 用找用书购用新图用 户密品本物户书片户 登码分查车管上上注 录类询理架传册 数据库设计 对于该网上书店,需要建立几个的数据库 Member(该表用来记录注册用户的个人信息) 字段名 数据类型 说明 Logname char 登录名 Realname Char 真实姓名 Password Char 密码 Email Char 用户email Gender Char 用户性别 Address Char 用户地址 Phone Char 用户电话 Problem Char 密码提示问 Answer Char 密码回答问题 Province Char 省份 Education Char 教育程度 Hobbies Char 爱好 Selfintro Char 自我简介 type char 用户类型 Orders(用来存储购物车上的商品) 字段名 数据类型 说明 User_name char 用户名 Goods_type char 所购物的书本名称 Goods_number char 所购的书本的数量 Book(该表用来记录书本的信息) 字段名 数据类型 说明 Id Int 书的id号 Name Varchar 书名 Type Int 书的类型;1计算机相关;2 外语相关;等等 Autho Char 作者 Press Varchar 书的出版社 Price Float 书的价格 Repertory Int 书的库存:1为有,2为无 Time Datetime 书上架的时间 Intro Varchar 书的简介 Image Varchar 书的图片 Commend int 书是否是推介品 Category(用来储存书的类型) 字段名 数据类型 说明 Id Int 惟一标识id Type Varchar 书的类型 各模块功能介绍及实现 3、 用户注册模块 首先用户在页面reg.html中按要求填写信息,在填写完后单击”提交”按钮来提交个人信息。提交后,信息在reg.html中进行验证,如果符合条件,就会提交到reg_ok.jsp进行处理。如果用户名没有给其他用户注册,并且系统要求填写的信息都合理,那么该用户就会注册成功。 页面处理代码如下: < %@include file=”../connect.inc” //数据库连接%> <%!String logname,realname,passwd1,passwd2,email,gender,address,phone; String problem,answer,province,education,selfintro,hobby; String[]hobbies; Boolean regAttempt=false; %> <% //必须填写的项目 Logname=request.getParameter(“logname”); realname=request.getParameter(“realname”); passwd1=request.getParameter(“passwd1”); passwd2=request.getParameter(“passwd2”); email=request.getParameter(“email”); gender=request.getParameter(“gender”); address=request.getParameter(“address”); if(gender.equals(“0”)) { Gender=”male”; } Else { Gender=”female”; } //非必须填写的项目 Phone=request.getParameter(“phone”); If(phone.trim().equals(“”)) { Phone=null;; } problem=request.getParameter(“problem”); If( problem.trim().equals(“”)) { problem =null;; } answer=request.getParameter(“answer”); If(answer.trim().equals(“”)) { answer=null;; } province=request.getParameter(“province”); If(province.trim().equals(“”)) { province =null;; } If(province.trim().equals(“Beijing”)) { Province=”北京”; } education=request.getParameter(“education”); If(education.trim().equals(“”)) { education =null;; } If(education.trim().equals(“1”)) { education =”高中以下程度”; } If(education.trim().equals(“2”)) { education =”高中/中专”; } If(education.trim().equals(“3”)) { education =”大学专科”; } If(education.trim().equals(“4”)) { education =”大学本科”; } If(education.trim().equals(“5”)) { education =”研究生或以上”; } Hobbies=request.getParameterValues(“hobbies”); Hobby=””; If(hobbies!=null){ For(int i=0;i 4、 用户登录模块 用户在登录对话框中,在其中填写自己的登录名和密码,提交后由login.jsp进行处理, login.jsp在数据库中查找,如果找到符合条件的用户名,并且密码正确,就会初始化一 些变量,并且将页面导向主页;如果输入的用户名或者输入的密码不正确,就会提示错 误信息。 登录处理代码如下: <%/* 这是普通用户验证处理 通过对数据库的访问对数据的验证 */ %> <%@include file=”connect.inc”%%> <%! String logname,logpass; Boolean loginAttempt=false; Boolean loginOK=false; %> <% //验证条件 If(request.getParameterValues(“logname”)!=null &&request.getParameterValues(“logpass”)!=null) { loginAttempt=true; } If(loginAttempt) { Logname=request.getParameter(“logname”); Logpass=request.getParameter(“logpass”); Logname=getStr(logname); Logpass=getStr(logpass); String sql=”select * from member where logname=?”+logname+”? and password=?”+logpass”?”; //数据库的访问 ResultSet RS=stmt.executeQuery(sql); Int rowscount=0; Try { While(RS.next()) { Rowscount++; } } Catch(Exception e) { } If(rowscount!=0) { Session.setAttribute(“username”,logname);//验证成功后,用session记录用户名称 loginOK=true; If(loginOK) { String url; url=request.getParameter(“url”); out..println(url); if(url==null){ reponse.sendRedirect(“index.jsp”); } Else{ Response.sendRedirect(“index.jsp”); } } }else{ Session.setAttribute(“username”,””); Response.sendRedirect(“index.jsp”); } } %> 5、找回密码模块 如果用户忘记了密码,就可以找回自己的密码,具体实现是:填写注册时填写的密码找 回问题和回答答案,如果正确的话系统就会显示用户的登录密码。 页面逻辑处理代码如下: <%@page contentType=”text/html;charset=gb2312”%> <%@include file=”../connect.inc”%> 找回密码 <%! String logname,problem,answer; Boolean loginAttempt=false; String errorMessage=””; %> <% If(request.getParameterValues(“logname”)!=null && request. getParameterValues(“problem”)!=null && request. getParameterValues(“answer”)!=null { loginAttempt=true; } If(loginAttempt) { Logname=request.getParameter(“logname”); problem=request.getParameter(“problem”); answer=request.getParameter(“answer”); logname=getStr(logname); problem=getStr(problem); answer=getStr(answer); String sql=”select * from member where logname=?”+logname+”? and problem=?”+problem+”?and answer=?”+answer+”?”; ResultSet RS=stmt.executeQuery(sql); Int rowscount=0; Try { While(RS.next()) { Rowscount++; errorMessage=RS.getString(“password”); } } Catch(Exception e) { } If(rowscount!=0) { //errorMessage=RS.getString(“password”); }else errorMessage=”您的提示问题或者回答不正确,请重新输入~”; } %>
取回密 码
 

 

______登录名:

密码提示问题:

____提示答案:

_______

  的密码是:<%=errorMessage%>
  返回登录

 

5、 商品分类模块 在本商店中书本可以按照类别进行分类,在这里我们把它分为9类:计算机相关、外语相关、数学相关、物理相关、化学相关、文学、哲学、综合和其他。我们也可以按照需求再划分其他类。其原理就是检索书本数据库中的categoryp字段,找到符合条件的记录并且返回给用户。 所有商品分类处理代码如下: <%@page contentType=”text/html;charset=gb2312”%> 书店的分类 <%@include file=”../title.jsp”%>

书的分类

<% String SQL=”select * from category order by id”; ResultSet RS=stmt.executeQuery(SQL); Int i=0,k=0; While(RS.next()) { I=i+1; If(k<=4) { String booktype,bookid; Booktype=RS.getString(“type”); Bookid=RS.getString(“id”); Out.println(“); K=k+1; } Else { String booktype,bookid; Booktype=RS.getString(“type”); Bookid=RS.getString(“id”); Out.println(“); Out.println(“”); K=0; } } RS.close(); %>
+booktype+”+booktype+”

【返回首页】

显示书本详细信息处理代码如下: <%@page contentType=”text/html;charset=gb2312”%> <% //书本的详细信息 %> <%@include file=”../title.jsp”%> 详细资料 <% String book_id,BN; Book_id=request.getParameter(“BN”); String strSQL=”select * from book where id=?”+book+”?”; ResultSet RS = stmt.executeQuery(strSQL); String id=””,name=””,press=””,time=””,intro=””,image=””,type=””,price=””,repertory=””,commend=””, images=””; //访问数据库 While(RS.next()) { Id=RS.getString(“id”); name=RS.getString(“name”); type=RS.getString(“type”); press=RS.getString(“press”); price=RS.getString(“price”); repertory=RS.getString(“repertory”); time=RS.getString(“time”); intro=RS.getString(“intro”); commend=RS.getString(“commend”); images=RS.getString(“images”); } RS.close(); %>

【首页】

 

 

类型: <% //列出图片 If(images==null) { %> <% } Else { %> <% } %>
书的详细资料
书名称: <%=name%>
<% If(type.equals(“1”)) Out.print(“计算机相关”); If(type.equals(“2”) Out.print(“外语相关”); If(type.equals(“3”) Out.print(“数学相关”); If(type.equals(“,”) Out.print(“物理相关”); If(type.equals(“,”) Out.print(“化学相关”); If(type.equals(“,”) Out.print(“文学”); If(type.equals(“,”) Out.print(“哲学”); If(type.equals(“,”) Out.print(“综合”); If(type.equals(“,”) Out.print(“其他”); %>
出版社: <%=press%>
单本价格: <%=price%>
库存: <% If(repertory.equals(“0”)) Out.print(“无”); If(type.equals(“1”)) Out.print(“有”); %>
精品推介: <% If(commend.equals(“0”)) Out.print(“否”); If(commend.equals(“1”)) Out.print(“是”); %>
上货时间: <%=time%>
书的描述: <%=intro%>
书暂无图片
书的图片 ”width=”70”height=”100”>
【关闭窗口】

6、 书本查询模块 首先,用户在search.htm中输入想要查询的书本的关键字,然后选择查询条件,用户可以选择的查询条件有书名、作者、出版社,然后单击”搜索”按钮提交,系统将会按照模糊查找在数据库中搜索符合条件的记录,并且将符合条件的记录都返回给用户。 页面的逻辑处理代码如下: <%@page contentType=”text/html;charset=gb2312”%> <%@include file=”../connect.inc”%> 搜索结果
<% String keyword=request.getParameter(“keyword”); Keyword=getStr(keyword); String way=request.getParameter(“way”); String SQL=””; If(way.trim().equals(“1”)) { SQL=”select * from book where name like „%”+keyword+%?”; } If(way.trim().equals(“2”)) { SQL=”select * from book where press like „%”+keyword+%?”; } If(way.trim().equals(“3”)) { SQL=”select * from book where repertory=1; } If(way.trim().equals(“4”)) { SQL=”select * from book where commend=1; } If(way.trim().equals(“5”)) { SQL=”select * from book where intro like „%”+keyword+%?”; } ResultSet RS=stmt.executeQuery(SQL); Out.println(“
符合条件产品如下:
”); Out.println(“
); Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“
新书名称出版社 库存 精品推界书的描述详细资料放入购物车
”); Int searchnum=0; While(RS.next()) { String name,press,intro; Int repertory,commend,id,BN; //name=new String((RS>getString(“name”)).getBytes(“gb2312”),”8859_1”); //type=new String((RS>getString(“type”)).getBytes(“gb2312”),”8859_1”); //shape=new String((RS>getString(“shape”)).getBytes(“gb2312”),”8859_1”); //screen=new String((RS>getString(“screen”)).getBytes(“gb2312”),”8859_1”); Name=new String(RS.getString(“name”)); Pree=new String(RS.getString(“press”)); repertory=RS.getInt(“repertory”)); commend= RS.getInt(“commend”)); intro=new String(RS.getString(“intro”)); id=RS.getInt(“id”); //输出从数据库读出的结果 Out.println(“); Out.println(“”); Out.println(“”); Out.println(“< td width=?100?>” +press+””); If(repertory==1) Out.println(“”); else Out.println(“< td width=?100?>无”); If(commend==1) Out.println(“”); Else Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“< a href=../search/information.jsp?BN=”id+” target=?_blank?>[详细资料]”); Out.println(“”); Out.println(“”); Out.println(“
”+name+”精品非精品”+intro+””); //Out.println(“[详细资料]”); Out.println(“放入购物车
”); Out.println(“
”); Searchnum++; } RS.close(); Out.println(“
”); Out.println(“”); Out.println(“
”); Out.println(“”); Out.println(“”); Out.println(“
”); Out.println(“共搜索到”+searchnum+”条记录。”); Out.println(“
”); %>

 

返回首页 返回搜索


 

7、 购物车模块 如果用户还没有登录,当用户想要购物时,系统会提示用户登录;用户登录后可以选 择想要购的书本,然后就放入了自己的购物车。该系统显示书本时都带有放入购物车的链接, 单击该链接就可以把该书本放进购物车了。 当用户单击主页的购物车链接时可以查看自己购物车上的商品,如果用户想继续购物, 就可以单击继续购物链接,如果用户购物完毕,就点击付款确认链接,系统会自动计算机所 要的总金额,当付款确认后系统会自动清除购物车的商品。 把商品放进购物车的文件为shopcart.jsp,其逻辑处理代码如下: <%@page contentType=”text/html;charset=gb2312”%> <%@include file=”../connect.inc”%>

 

 

<% If(session.getAttribute(“username”)==null||session.getAttribute(“username”)==””) { Response.sendRedirect(“../plelogin.jsp”); } %> <% String goods_type,CN; Goods_type=new String((request.getParameter(“CN”).getBytes(“8859_1”)),”gb2312”); //把货物放入购物车 String sqlserch=”select * from orders where goods+type=?”+goods_type+”?and user_name=?”+session.getAttribute(“username”)+””; ResultSet r=stmt.executeQuery(sqlserch); Int serchnum=0; While(r.next()) { Searchnum++; } If (searchnum==0) { String sqlCart=”insert into orders(user_name,goods_type,goods_number) Values(„”+session.getAttribute(“username”)+”?,?”+goods_type+”?,?1?)”; Try { Int num 1=stmt.executeUpdate(sqlCart); Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“
”); Out.println(“
加入购物车成功
”); Out.println(“
”); } Catch(SQLException e) { Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“
”); Out.println(“< div align=?center?>加入购物车成功”); Out.println(“
”); } } Else { String sqlCart=”update orders set goods_number=goods_number+1 where goods_type=?”+goods_type+”?and user_name=”?+session.getAttribute(“username”)+”?”; Try { Int num1=stmt.executeUpdate(sqlCart); Out.println(“< table width=?770?border=?0?align=?center?>”); Out.println(“”); Out.println(“”); Out.println(“< div align=?center?>加入购物车成功
”); Out.println(“”); Out.println(“”); Out.println(“”); } Catch(SQLException e) { Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“”); Out.println(“
”); Out.println(“< div align=?center?>加入购物车失败”); Out.println(“
”); } } %>

 

 

购物车 返回主页

显示购物车上的商品的文件为list_shopcart.jsp,其逻辑处理代码如下: <%@page contentType="text/html;charset=gb2312"%> <%@include file="../connect.inc"%> 购物清单
<% If(session.getAttribute("username")==null||session.getAttribute("username")=="") { Response.sendRedirect("../plelogin.jsp"); %> <% String deletype; Deletype=request.getParameter("bkID"); Deletype=getStr(deletype); If(deletype!=null) { String delsql="delete from orders where goods_type='"+deletype+"'and user_name='"+session.getAttribute("username")+"'"; Int num=stmt.executeUpdate(delsql); } %> <% ////////////////算出共多少页手机,每页7个手机 Int t; Int mtotal; T=0; String strSQLsize=”select * from orders where user_name=?”+session.getAtrribute(“username”)+”?”; ResultSet RSsize=stmt.executeQuery(strSQLsize); While(RSsize.next()) { T=t+1; } //如果记录总数除以每页的显示个数,余数大于0,那么 //逻辑页数应该为商+1 If((t%7)>0) { Mtotal=t/7+1; } Eels mtotal=t/7; %> <%!String pageNo,mTmp; Int I,j,k; %> <% pageNo=request.getParameter(“pageNo”); if(pageN0==null) { pageNo=”1”; } //j表示的是pageNo对应的整型值 J=Integer,parseInt(pageNo); If(j<1) J=1; If(j>mtotal) J=mtotal; %> <% String SQL="select * from order,book where orders.goods_type=book.name and user_name='"+session.getAttribute("username")+"'"; ResultSet RS=stmt.executeQuery(SQL); for(k=0;k<(j-1)*7;k++) { RS.next(); } i=0; k=1; out.println("
购物清单如下:
"); out.println("
"); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println("
书的名称出版社库存精品推界单价数量详细资料操作
"); int searchnum=0; while(RS.next()) { i=i+1; //超过5条 if(i==8) { k=0; break; } String goods_type,goods_number; String name,press,intro; int repertory,commend,id,BN; float price; id=RS.getInt("id"); name=new String(RS.getString("name")); press=new String(RS.getString("press")); repertory=RS.getInt(RS.getString("repertory")); commend=RS.getInt(RS.getString("commend")); intro=new String(RS.getString("intro")); price=RS.getFloat(RS.getString("price")); goods_type=new String(RS.getString("goods_type")); goods_number=new String(RS.getString("good_number")); out.println(""); out.println(""); out.println(""); out.println(""); if(repertory==1) out.println(""); else out.println(""); if(commend==1) out.println(""); else out.println(""); out.println(""); out.println(""); out.println(">"); out.println(""); out.println(""); out.println("
"+name+""+price+"精品非精品"+price+""+goods_number+""); out.println("[详细资 料]"); out.println("
"); out.println("
"); searchnum++; } i=i-k; RS.close(); %>
<% out.println("共定购了"+t+"本书。"); out.println("
"); out.println("
"); %> <% //以下代码行是用来显示页面数的 if(j<=1) { %>

结果共 <%=mtotal%>页, 现在是第<%=j%>

首页 <% int ii=Integer.parseInt(pageNo,10); if(ii>1) ii=ii-1; String ssTmp=Integer.toString(ii); %> 上一页 <% } if(j<=mtotal) { int ii=Integer.parseInt(pageNo,10); if(ii 下一页尾页 <% } if(mtotal

返回首页


 

确认付款,清空购物车的文件为storce.jsp,其主要处理代码如下: <%@page contentType="text/html;charset=gb2312"%> <%@page import="java.lang.*"%> <%@page import="java.sql.*"%> <%@page import="java.io.*"%> <%@page import="java.util.*"%> <% Class.forName("sun.jdbc.odbc.JdbcodeDriver"); Connection conn=DriverManager.getConnection("jdbc:odbc:test","sa","519"); Statement stmt=conn.createStatement(); Connection insertconn DriverManager.getConnection("jdbc:odbc:test","sa","519"); Statement inserstmt=insertconn.createStatement(); %> <%! public String getStr(String str) { try { String temp_p=str; byte[]temp_t=temp_p.getBytes("ISO8859-1"); String temp=new String(temp_t); return temp; } catch(Exception e) { } return"null"; } %> <% int year,month,day; GregorianCalendar calendar; calendar=new GregorianCalendar(); month=calendar.get(Calendar.MONTH)+1; day=calendar.get(Calendar.DAY_OF_MONTH); year=calendar.get(Calendar.YEAR); String mytime=year+"/"+month+"/"+day; int bkid,bksum; String mysql=”select * from orders where user_name=?”+session.getAttribute(“username”)+”?”; ResultSet r=stmt.executeQuery(mysql); Try { While(r.next()) { Bkid=r.getInt(“book_id”); Bksum=r.getInt(“book_number”); String insersql=”insert into orderform(username,book_id,book_number,saletime)Values(„”+session.getAttribute(“username”)+”?”+,”+bkid+”,”+bksum+”,”+”?”+mytime+”?”+”)”; Int num1=insertstmt.executeUpdate(insersql); Out.println(“
”); } } Catch(SQLException e) { Out.println(“付款失败”); } %> <% Try { String delsql=”delete from orders where user_name=?”+session.getAttribute(“username”)+”?”; Int num2=stmt.executeUpdate(delsql); Out.println(“
”); Out.println(“

付款成功,清空购物车

”); } Catch(SQLException e) { Out.println(“
”); Out.println(“清除购物车失败”); } %>

 

 

返回首页

8、用户管理模块 用户管理主要是管理员的工作,我们经简化到主页上来。管理员可以查看所有的用户的信息,并且有权力删除该用户,删除后该用户帐号不能再在该网站上登录。 <%@page contentType="text/html;charset=GB2312"%> <%@page import="java.lang.*"%> <%@include file="..connect.inc" %> 用户信息
<% if(session.getAttribute("username")++null||session.getAttribute("username")==""||session.equals(" type")==null||session.getAttribute("type")=="") { response.sendRedirect("../plelogin.jsp"); } %> <% String deletype; deletype=request.getParameter(bkID); deletype=getStr(deletype); if(deletype!null) { String delsql="delete from member where logname='"+deletype"'"; int num=stmt.executeUpdate(delsql); } %> <% //打印标题 out.println("
用户信息
"); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println("
登录名真实姓名E-mail地址联系电话删除
"); %> <% ResultSet RS=stmt.executeQuery("select * from member where type='0'"); while(RS.next()) { //得到用户资料 String l=RS.getString("logname"); String r=RS.getString("realname"); String e=RS.getString("email"); String a=RS.getString("address"); String p=RS.getString("phone"); //生成用户表格 out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println("
"+l+""+r+""+e+""+a+""+p+"
"); out.println("
"); } RS.close(); %> <% out.append("
"); //以下代码行是用来显示页面数的 %>

 

 

[返回首页]

} 9、 新书上架模块 新书上架是管理员发布新书的模块,该页要求所有栏目都要填写,填写后在post_ok.jsp中处理,如果处理成功,就会在数据中增加多一条记录。 <%@include file="../connect.inc"%> <%@page contentType="text/html;charset=GB2312"%> 添加结果

[首页]

 

 

<% String name,type,press,price,time,intro,commend,repertory; //中文处理 name=getStr(request.getParameter("name")); type=getStr(request.getParameter("type")); press=getStr(request.getParameter("press")); price=getStr(request.getParameter("price")); repertory=getStr(request.getParameter("repertory")); time=getStr(request.getParameter("time")); intro=getStr(request.getParameter("intro")); commend=getStr(request.getParameter("commend")); //测试语句 out.print(name+type+press+price+repertory+time+intro); %> <% //自动生成id int temp_id=0; String sql_id="select * from book order by id"; ResultSet RS_id=stmt.executeQuery(sql_id); while(RS_id.next()) { temp_id=RS_id.getInt("id"); temp_id=temp_id+1; } String sqlsearch="select * from book wherre name='"+name+"'"; ResultSet r=stmt.executeQuery(sqlsearch); int searchnum=0; while(r.next()) { searchnum++; } //测试语句 out.println(searchnum+"中国"+temp_id); if(searchnum==0) { //插入记录 String sqlinsert="insert into book(id,name,type,press,price,repertory,time,intro,commend)Values('"+temp_id+"','"+name+"','"+ type+"','"+press+"','"+price+"','"+repertory+"','"+time+"','"+intro+"','"+commend+"')"; try { int num l=stmt.executeUpdate(sqlinsert); out.println(""); out.println(""); out.println(""); out.println(""); out.println("
"); out.println("
添加成功
"); out.println("
"); } catch(SQLException e) { out.println(""); out.println(""); out.println(""); out.println(""); out.println("
"); out.println("
添加失败可能是时间输入格 式不对
"); out.println("
"); } } else { out.println(""); out.println(""); out.println(""); out.println(""); out.println("
"); out.println("
该书已存在
"); out.println("
"); } %> 10、图片上传模块 图书上传模块是管理员上传和修改图书图片的模块,在upfile.jsp中处理,如果处 理成功,就会在数据库中增加多图片所在路径。Upfile.jsp文件里用了SmarUpload这个 JavaBean类。 <%@include file="../connect.inc"%> <%@page contentType="text/html;charset=GB2312"%> import="com.jspsmart.upload.*,java.util.*,java.lang.*" %> <% /*------------------------------------------------*\ * 上传文件 \*------------------------------------------------*/ %> <% String id=request.getParameter("BN"); %> <% try { final String UpFileType="jpg|gif"; String ErrMsg=null; boolean Err=true; //初始化 su.initialize(pageContext); //上传 su.upload(); com.jspsmart.upload.File myFile=su.getFiles().getFile(0); if(!myFile.isMissing()) { String FileType=myFile.getFileExit(); FileType=FileType.toLowerCase(); //将扩展名转换成小写 if(UpFileType.indexOf(FileType)==-1) { ErrMsg="上传文件失败~目前只允许上传以下格式的文件: "+UpFileType; out.print(""); Err=false; } FileType="upload/"+id+"."+FileType; if(Err) myFile.saveAs(FileType); //在数据库添加图片路径 String sql="update book set image='"+FileType+"'where id='"+id+'"; try{ int num l=stmt.executeUpdate(sql); out.println("上传成功"); } catch(SQLException e) { out.append("失败"); } } } catch(Exception e) { e.printStackTrace(); } %>
/
本文档为【网上书店系统】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索