问题描述
我想写一个老师给同学提交成绩的页面,试了好多方法不管用,代码如下<body><%request.setCharacterEncoding("UTF-8");Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connectionconn=DriverManager.getConnection("jdbc:odbc:lesson","","");Statementstmt1=conn.createStatement();ResultSetrs=stmt1.executeQuery("SELECT*FROMteacherWHEREiflogin='true'");if(rs.next()){inti=0;StringteaID=rs.getString("teaID");Statementstmt2=conn.createStatement();ResultSetrs2=stmt2.executeQuery("SELECT*FROMElectWHEREteaID='"+teaID+"'ORDERBYcourseID");while(rs2.next()){i++;StringstuID=rs2.getString("stuID");StringcourseID=rs2.getString("courseID");Stringscore=rs2.getString("score");out.println("stuID:"+stuID+"courseID"+courseID+"");if(score==null){out.println("<formmethod="post">");out.println("<inputtype="text"name=""+i+"">");Stringa=request.getParameter(""+i+"");if(a!=null){Statementstmt3=conn.createStatement();Stringsql1=null;sql1="UPDATEElectSETscore='"+a+"'WHEREstuID='"+stuID+"'ANDcourseID='"+courseID+"'";stmt3.executeUpdate(sql1);stmt3.close();}}else{out.println(score);}}out.println("<inputtype="submit"value="提交"onclick="location.reload()">");out.println("</form>");//stmt3.close();stmt2.close();conn.close();}%></body>我如果其中有表单不填写,提交的时候,数据库里本来就空的数据应该没有变化,可是,提交了之后,页面再也不会显示表单了,而是跳到else里面去了,不理解为什么。希望多多指教!
解决方案
解决方案二:
求问啊。。。第一次发帖不要没人回啊。。。好难过
解决方案三:
这代码也太难看了。。。。if(score==null)改成if(score==null||score.equals("")试试
)
解决方案四:
打错了。。。是这个if(score==null||!score.equals(""))
解决方案五:
我擦,应该是这个……应该是吧应该是吧……if(score==null||score.equals(""))
解决方案六:
引用4楼u010442195的回复:
我擦,应该是这个……应该是吧应该是吧……if(score==null||score.equals(""))
对
解决方案七:
基本功还要好好打打