jsp程序开发范例宝典 例子129的一个小问题
发表在JavaWeb图书答疑 2008-03-04
是否精华
版块置顶:
<P>我把本例129的save.jsp页面的代码贴出来:</P>
<P>&lt;%@ page language="java" contentType="text/html; charset=GB18030"<BR>&nbsp;pageEncoding="GB18030"%&gt;<BR>&lt;jsp:directive.page import="java.sql.ResultSet" /&gt;<BR>&lt;jsp:directive.page import="java.sql.Connection" /&gt;<BR>&lt;jsp:directive.page import="java.sql.Statement" /&gt;<BR>&lt;jsp:directive.page import="java.sql.DriverManager" /&gt;<BR>&lt;meta http-equiv="Content-Type" content="text/html; charset=gb2312"&gt;<BR>&lt;%<BR>&nbsp;request.setCharacterEncoding("GB18030");<BR>&nbsp;String maxId = null;<BR>&nbsp;int ID = 0;<BR>&nbsp;if (request.getParameter("spname") != null) {<BR>&nbsp;&nbsp;String spname = request.getParameter("spname");<BR>&nbsp;&nbsp;String cs = request.getParameter("cs");<BR>&nbsp;&nbsp;String gg = request.getParameter("gg");<BR>&nbsp;&nbsp;String bz = request.getParameter("bz");<BR>&nbsp;&nbsp;String dw = request.getParameter("dw");<BR>&nbsp;&nbsp;String dj = request.getParameter("dj");<BR>&nbsp;&nbsp;String sl = request.getParameter("sl");<BR>&nbsp;&nbsp;String je = request.getParameter("je");<BR>&nbsp;&nbsp;String cgdate = request.getParameter("cgdate");<BR>&nbsp;&nbsp;String memo = request.getParameter("memo");<BR>&nbsp;&nbsp;if (spname == null || cs == null || gg == null || bz == null<BR>&nbsp;&nbsp;|| dw == null || dj == null || sl == null || je == null) {<BR>%&gt;<BR>&lt;script language="javascript"&gt;<BR>&nbsp;&nbsp;&nbsp;alert("您必须全部填写")<BR>&nbsp;&nbsp;&nbsp;history.back(1)<BR>&nbsp;&nbsp;&nbsp;&lt;/script&gt;<BR>&lt;%<BR>&nbsp;&nbsp;}<BR>&nbsp;&nbsp;dj = dj + "元";<BR>&nbsp;&nbsp;sl = sl + dw;<BR>&nbsp;&nbsp;je = je + "元";<BR>&nbsp;&nbsp;//连接数据库<BR>&nbsp;&nbsp;Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");<BR>&nbsp;&nbsp;Connection conn = DriverManager<BR>&nbsp;&nbsp;.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_database05;user=sa");<BR>&nbsp;&nbsp;Statement st = conn.createStatement();<BR>&nbsp;&nbsp;String sql = "select max(id) as id from tab_cgd where cgdate='"<BR>&nbsp;&nbsp;+ cgdate + "'";<BR>&nbsp;&nbsp;ResultSet rs = st.executeQuery(sql);<BR>&nbsp;&nbsp;if (rs.next())<BR>&nbsp;&nbsp;&nbsp;maxId = rs.getString(1);<BR>&nbsp;&nbsp;if (maxId == null)<BR>&nbsp;&nbsp;&nbsp;maxId = "CG" + cgdate.replace("-", "") + "00001";<BR>&nbsp;&nbsp;else {<BR>&nbsp;&nbsp;&nbsp;maxId = maxId.trim();<BR>&nbsp;&nbsp;&nbsp;ID = Integer.parseInt(maxId.substring(maxId.length() - 5));<BR>&nbsp;&nbsp;&nbsp;maxId = maxId.substring(0, maxId.length() - 5)<BR>&nbsp;&nbsp;&nbsp;+ String.format("%05d", ID + 1);<BR>&nbsp;&nbsp;}<BR>&nbsp;&nbsp;sql = "insert into tab_cgd(id,spname,cs,gg,bz,dw,dj,sl,je,cgdate,memo) values('"<BR>&nbsp;&nbsp;+ maxId+ "','"+ spname+ "','"+ cs+ "','"+ gg+ "','"+ bz+ "','"+ dw+ "','"+ dj<BR>&nbsp;&nbsp;+ "','"+ sl+ "','" + je + "','" + cgdate + "','" + memo + "')";<BR>&nbsp;&nbsp;st.executeUpdate(sql);<BR>&nbsp;&nbsp;rs.close();<BR>&nbsp;&nbsp;st.close();<BR>&nbsp;&nbsp;conn.close();<BR>%&gt;<BR>&lt;script language="javascript"&gt;<BR>&nbsp;alert("采购信息保存成功!");<BR>&nbsp;window.location.href="spcg_xianxi.jsp";<BR>&lt;/script&gt;<BR>&lt;%<BR>}<BR>%&gt;</P>
<P>发生的是下面的错误:从前台页面index.jsp接收表单传递过来的数据,在if语句判断有空的时候,弹出提示“您必须全部填写!”,点“确定”之后,回到上一个页面index.jsp。但是,为什么也能把数据保存到数据库中呢?如果数据有空,应该不能保存的。敬请赐教!</P>
<P>把spname ==&nbsp;"" || cs == "" || gg ==&nbsp;"" || bz ==&nbsp;""<BR>&nbsp;&nbsp;|| dw == ""|| dj ==&nbsp;"" || sl ==&nbsp;"" || je == ""也不行。同样的错误</P>
分享到:
精彩评论 5
城中狼
学分:0 LV1
2008-03-04
沙发
<P><U>读者您好:</U></P>
<P><U>我们这个光盘中的代码有一些错误,给您带来麻烦,非常抱歉。以下就是我所更改的代码内容:</U></P>
<P>&nbsp;<STRONG>if (spname.equals("") || cs.equals("") || gg.equals("") || bz.equals("")&nbsp;|| dw.equals("")) {<BR>%&gt;<BR>&lt;script language="javascript"&gt;<BR>&nbsp;&nbsp;&nbsp;alert("您必须全部填写");<BR>&nbsp;&nbsp;&nbsp;history.back(-1);<BR>&nbsp;&nbsp;&nbsp;&lt;/script&gt;<BR>&lt;%<BR>&nbsp;&nbsp;}%&gt;</STRONG></P>
<P><U>请您save.jsp文件中进行更改。如果还存在问题,请提出,我们会在及时回复的。谢谢</U></P>
<P><BR>&nbsp;</P>
sdpwlf1982
学分:0 LV1
2008-03-05
板凳
<P>城中狼老兄:</P>
<P>&nbsp; 您好!首先,感谢您的指点!其次,希望您再次指点一下,因为我按照您说的方法,修改了我的代码,执行后,还是重复同样的错误!我的配置环境是:Windows server 2003R2+tomcat6.0+java ee 5 sdk;我把我的save.jsp页面代码贴出来,敬请指教;&nbsp; 二:就是还想向您请教一下权限的问题,我在前面的帖子中已经写出来了,估计您也看到了,能否指点一下。谢谢!&nbsp; 下面的是我save.jsp的代码:</P>
<P>&lt;%@ page language="java" contentType="text/html; charset=GB18030"<BR>&nbsp;pageEncoding="GB18030"%&gt;<BR>&lt;jsp:directive.page import="java.sql.ResultSet" /&gt;<BR>&lt;jsp:directive.page import="java.sql.Connection" /&gt;<BR>&lt;jsp:directive.page import="java.sql.Statement" /&gt;<BR>&lt;jsp:directive.page import="java.sql.DriverManager" /&gt;<BR>&lt;meta http-equiv="Content-Type" content="text/html; charset=gb2312"&gt;<BR>&lt;%<BR>&nbsp;request.setCharacterEncoding("gb2312");<BR>&nbsp;if (request.getParameter("shangjijigou")!=""){<BR>&nbsp;&nbsp;String sjname = request.getParameter("shangjijigou");<BR>&nbsp;&nbsp;String xingming = request.getParameter("xingming");<BR>&nbsp;&nbsp;String bianhao = request.getParameter("bianhao");<BR>&nbsp;&nbsp;String quanxian = request.getParameter("quanxian");<BR>&nbsp;&nbsp;if ( xingming.equals("")||bianhao.equals("")||quanxian.equals("")){<BR>&nbsp;&nbsp;%&gt;<BR>&nbsp;&nbsp; &lt;script language="javascript"&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert("您必须全部填写!");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; history.back(-1);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/script&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;%}<BR>&nbsp;&nbsp;//连接数据库<BR>&nbsp;&nbsp;Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");<BR>&nbsp;&nbsp;Connection conn = DriverManager<BR>&nbsp;&nbsp;.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=nkkh;user=sa");<BR>&nbsp;&nbsp;Statement st = conn.createStatement();<BR>&nbsp;&nbsp;String sql = "insert into czyxx(bianhao,password,xingming,danwei,quanxian) values('"+ bianhao+ "','888888','"+ xingming+ "','"+ sjname+ "','"+ quanxian+ "')";<BR>&nbsp;&nbsp;st.executeUpdate(sql);<BR>&nbsp;&nbsp;st.close();<BR>&nbsp;&nbsp;conn.close();<BR>%&gt;<BR>&lt;script language="javascript"&gt;<BR>&nbsp;alert("操作员信息保存成功!");<BR>&nbsp;window.location.href="czy_del.jsp";<BR>&lt;/script&gt;<BR>&lt;%<BR>}<BR>%&gt;</P>
小小邪
学分:0 LV1
2008-03-06
地板
<P>1.请将“== null”语句替换为“.equals("")”,例如spname == null 替换为 spname.equals("")</P>
<P>2.请在&nbsp;dj = dj + "元";语句的上一行插入如下代码</P>
<P>else{</P>
<P>3.请在代码最后再添加一个“}”符号</P>
<P>即</P>
<P>&lt;%<BR>}<BR>%&gt;</P>
<P>替换为:</P>
<P>&lt;%<BR>}}<BR>%&gt;<BR></P>
sdpwlf1982
学分:0 LV1
2008-03-06
4L
多谢飞龙老兄!按照你提供的方法,问题已解决。十分感谢!!我的另外一个关于权限的问题,怎么没人解答呢?
无语_mrkj
学分:3155 LV11
2008-03-10
5L
没有看到您说的那个权限问题的帖子,请重新发布一个。
首页上一页 1 下一页尾页 5 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照