请大家帮忙修改,不知道怎么改了。。谢谢!!!!
<%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%>
<%@ page import="java.sql.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="javax.naming.*"%>
<%@ page import="java.util.Date" %>
<%@ page import="java.text.*" %>
<%@ page import="java.util.*" %>
<%@ page import="java.text.*" %>
<%@ page import="com.jwt.*"%>
<!-- 操作员基本信息开始-->
<%
String uname = (String)session.getAttribute("username");//传来的登陆号
String ucode = (String)session.getAttribute("unitcode");//传来的单位
String uid = (String)session.getAttribute("userid");//传来的单位
String urule = (String)session.getAttribute("rule");//权限
if(uname==null){
request.setAttribute("problem","登录超时,请重新登录!");
RequestDispatcher rd = getServletContext().getRequestDispatcher("/yw/errorpage.jsp");
rd.forward(request,response);
return;
}
%>
<!-- 操作员基本信息结束-->
<!--数据库连接开始-->
<%
Context ctx = null;
DataSource ds;
Connection conn = null; //Connection接口
Statement stmt = null; //Statement接口
Statement stmt2 = null; //Statement接口
ResultSet rs = null; //记录结果集
ResultSet rs2 = null; //记录结果集
String sql=null;
String sql2=null;
try {
ctx = (Context) new InitialContext().lookup("java:comp/env");
ds = (DataSource) ctx.lookup("jdbc/jwt");
conn = ds.getConnection();
stmt = conn.createStatement();
stmt2 = conn.createStatement();
} catch (Exception e) {
System.out.println(e);
}
%>
<!--数据库连接结束-->
<html>
<head>
<script language="JavaScript">
function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore) selObj.selectedIndex=0;
}
</script>
<SCRIPT>
function showcalendar(obj)
{
dv=window.showModalDialog("./images/calendar.htm","44","center:1;help:no;status:no;dialogHeight:246px;dialogWidth:216px;scroll:no")
if (dv) {if (dv=="null") obj.value='';else obj.value=dv;}
}
function changeQmsl(obj){
var tr = obj.parentNode.parentNode;
var dyzj = tr.all["dyzj"];
var dyjs = tr.all["dyjs"];
var qmsl = tr.all["qmsl"];
var qssl = tr.all["qssl"];
if(dyzj.value != "" && dyjs.value != ""){
var val = qssl.innerHTML * 1; //字符转换成数字
qmsl.innerHTML = val + dyzj.value - qyjs.value;
}
}
</SCRIPT>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>开卡</title>
<%
String nianf="";
String yuef="";
if (request.getParameter("nianf")!=null){
nianf=request.getParameter("nianf");
}
if (request.getParameter("yuef")!=null){
yuef=request.getParameter("yuef");
}
String rq=nianf+yuef;
DateFormat f = new SimpleDateFormat("yyyyMM");
Calendar c = GregorianCalendar.getInstance();
c.setTime(f.parse(rq));//提示这行错误!!估计是rq的传值不对!!求改正!!!
c.add(Calendar.MONTH, -1);
String rq1=f.format(c.getTime());
%>
<!-- 时间begt endt开始 -->
<%
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd ");
String nowdate = format.format(new Date()); //得到s的数值 年月日
String endt = format.format(new Date()); //得到传过来的结束时间
if (request.getParameter("endt") != null) {
endt = request.getParameter("endt");
}
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-M-d");
SimpleDateFormat format2 = new SimpleDateFormat("yyyyMM");
String montht = format2.format(format1.parse(endt));
%>
<!-- 结束 -->
<!-- 城市判断citycode depcode开始-->
<%
String citycode="00";
String cityname="省";
if(request.getParameter("citycode")!=null){
citycode=request.getParameter("citycode");
cityname=request.getParameter("cityname");
}
if(!urule.equals("1")){
citycode=ucode;
}
%>
<!-- 结束 -->
<!-- 单位dep_code dep_name接收开始 -->
<%
String dep_code="";
if(request.getParameter("select2")!=null){
dep_code=request.getParameter("select2");
}
%>
<!-- 结束 -->
<style type="text/css">
.STYLE2 {font-size: 16px; }
.STYLE3 {font-size: 16}
.STYLE6 {font-size: 16px; font-family: "宋体"; }
.STYLE7 {font-family: "宋体"}
.STYLE9 {font-size: 18px}
.STYLE11 {font-size: 18px; font-family: "宋体"; }
.STYLE12 {font-size: 18px; font-family: "黑体"; }
</style>
</head>
<body>
<form action="./tongjiluru.jsp" method="get" name="form1" class="STYLE3">
<table width="800" border="0" cellpadding="0" cellspacing="0" align="center">
<tr>
<td height="40" colspan="3" style=" border-bottom-color:#A3BFA8; border-bottom-width:thin;border-bottom-style:solid"><div align="center">
<div align="left" class="STYLE11"><br>
<span class="STYLE2">>>统计录入</span></div>
</div></td>
</tr>
<tr>
<td height="20" colspan="2"> </td>
<td width="215"> </td>
</tr>
<tr>
<td width="395">
</td>
<td rowspan="2"><div align="right"><span class="STYLE9">
<input type="submit" name="Submit" value="统计" >
</span></div></td>
</tr>
<tr>
<td colspan="2">
统计年份:<select name="nianf" id="nianf">
<option value="2011" <%if (nianf.equals("2011")){%> selected="selected"<%}%>>2011年</option>
</select>
月份:<select name="yuef" id="yuef">
<option value="07" <%if (yuef.equals("07")){%> selected="selected"<%}%>>七月份</option>
<option value="08" <%if (yuef.equals("08")){%> selected="selected"<%}%>>八月份</option>
<option value="09" <%if (yuef.equals("09")){%> selected="selected"<%}%>>九月份</option>
<option value="10" <%if (yuef.equals("10")){%> selected="selected"<%}%>>十月份</option>
<option value="11" <%if (yuef.equals("11")){%> selected="selected"<%}%>>十一月份</option>
<option value="12" <%if (yuef.equals("12")){%> selected="selected"<%}%>>十二月份</option>
</select>
</td>
</tr>
</table>
</form>
<table width="800" border="0" cellpadding="0" cellspacing="0" align="center">
<tr>
<td>
<table width="800" border="0" cellpadding="0" cellspacing="0" align="center">
<tr>
<td colspan="9" class="STYLE3" align="center" >用户统计录入</td>
</tr>
<tr>
<td colspan="9" class="STYLE3">统计日期:<%=endt%></td>
</tr>
</table>
<table width="800" border="1" cellpadding="0" cellspacing="0" align="center">
<tr bgcolor="#CAE7F7">
<td width="225" height="22" bgcolor="#CAE7F7" class="STYLE9 STYLE3"><div align="center" class="STYLE6">所在单位 </div></td>
<td width="202" height="22" bgcolor="#CAE7F7" class="STYLE9 STYLE3"><div align="center" class="STYLE6">期初数量</div></td>
<td width="219" height="22" bgcolor="#CAE7F7" class="STYLE9 STYLE3"><div align="center" class="STYLE6">当月增加</div></td>
<td width="144" height="22" bgcolor="#CAE7F7" class="STYLE9 STYLE3"><div align="center" class="STYLE6">当月减少</div></td>
<td width="144" height="22" bgcolor="#CAE7F7" class="STYLE9 STYLE3"><div align="center" class="STYLE6">期末数量</div></td>
</tr>
<%
sql="select dw,nvl(qmsl,0) qmsl from temptj3 where rq='"+rq1+"'";
//sql="select dw,nvl(qssl,0) qssl,nvl(dyzj,0) dyzj,nvl(dyjs,0) dyjs,nvl(qmsl,0) qmsl from temptj3 where rq='"+rq+"'";
//sql="insert into temptj3(dw,qssl,rq) select t1.dw,t2.qmsl,'201107' from (select dw from temptj3) t1 left join temptj3 t2 on t1.dw = t2.dw where t2.rq = '201106'";
rs=stmt.executeQuery(sql);
int i=0;int i1=0;int i2=0;int i3=0;int i4=0;int i5=0;int i6=0;int i7=0;int i8=0;
int j=0;
while(rs.next()){
i++;
j=i%2;
%>
<tr <%if(j==0) {%>bgcolor="#FFCCCC" <%} %>>
<td height="22" width="20%" class="STYLE2 STYLE7"><%=rs.getString("dw")%></td>
<td height="22" width="10%" class="STYLE3" ><div align="right" class="STYLE6" id="qssl"><%=rs.getInt("qmsl")%></div></td>
<td height="22" width="10%" class="STYLE3" ><input id="dyzj" type="text" onchange="changeQmsl(this)" name="dyzj"/><%=rs.getInt("dyzj")%></td>
<td height="22" width="10%" class="STYLE3" ><input id="dyjs" type="text" onchange="changeQmsl(this)" name="dyjs"/><%=rs.getInt("dyjs")%></td>
<td height="22" width="10%" class="STYLE3" ><div align="right" class="STYLE6" id="qmsl"></div></td>
</tr>
<%}%>
<%
sql2="select sum(nvl(qssl,0)) hjqssl,sum(nvl(dyzj,0)) hjdyzj,sum(nvl(dyjs,0)) hjdyjs,sum(nvl(qmsl,0)) hjqmsl from temptj3 where rq='"+rq+"'";
rs2=stmt2.executeQuery(sql2);
if (rs2.next()){
%>
<tr <%if(j==1) {%>bgcolor="#FFCCCC" <%} %>>
<td height="22" class="STYLE2 STYLE7">合计:</td>
<td height="22" class="STYLE3"><div align="right" class="STYLE6"><%=rs2.getString("hjqssl")%></div></td>
<td height="22" class="STYLE3"><div align="right" class="STYLE6"><%=rs2.getString("hjdyzj")%></div></td>
<td height="22" class="STYLE3"><div align="right" class="STYLE6"><%=rs2.getString("hjdyjs")%></div></td>
<td height="22" class="STYLE3"><div align="right" class="STYLE6"><%=rs2.getString("hjqmsl")%></div></td>
</tr>
<%}%>
</table>
</td>
</tr>
</table> <span class="STYLE3"><br>
</span>
<table width="800" cellspacing="0" cellpadding="0" border="0" align="center">
<tr>
</tr></table><div align="center"><center>
<br>
</center></div><table width="800" cellspacing="0" cellpadding="0" border="0" align="center"><tr>
<td class="STYLE3"><span class="STYLE11 STYLE2"><br></span> </td>
<td class="STYLE3"><div align="right" class="STYLE7 STYLE2">操作员: [<%=uid%>] <%=uname %></div></td>
</tr>
</table>
<p class="STYLE3"> </p>
<tr> </tr>
<%
rs.close();
rs2.close();
conn.close();
%>
</body>
</html>
该程序实现的是统计录入:用户在下拉选择框中选择年和月后点击统计出来表格。表格中包括期初数量(上个月的期末数量),当月增加(用户自己输入),当月减少(用户自己输入),期末数量(期初数量+当月增加-当月减少)。由于我现在没连接数据库,所以还无法把页面给大家,请大家帮帮忙,帮我指出错误,感激不尽。。
[解决办法]
String rq=nianf+yuef;
在这个后面
System.out.println("rq="+rq);
看看是什么东东
如果是空白 就说明年份和月份传过来的值或参数都是空的
如果有年份没月份 就说明月份传过来的值或参数都是空的
如果有月份没年份 就说明年份传过来的值或参数都是空的
如果年份月份都有,那也要仔细看看,值是不是合法的,年份不是4位数,月份不是两位数或月份小于01和大于12都是不合法的
不管是什么样的结果,都要在前一个页面对年份和月份这两个值进行合法性判断后再提交