2013-12-18 3 views
-2

아무도 체크 박스가 루프에 체크되었는지 아닌지를 체크하는 방법을 말해 줄 수 있습니까 ... 체크 된 체크 박스의 값만을 저장하고 싶습니다. 등이루프의 체크 박스를 체크하고 체크 된 체크 박스의 값만 검색하십시오

for(int i=0;i<9;i++) 
     { 
     String name=request.getParameter("b"); 
     String ca[]=request.getParameterValues("a"+i); 

      int caa=Integer.parseInt(ca[i]); 
      int ff=caa-1; 
      String m9=""+ff; 

     String rr[]=request.getParameterValues("g"+i); 
    int rrr=Integer.parseInt(rr[i]); 
    int rre=rrr-1; 
    String m=""+rre; 

    String ttl[]=request.getParameterValues("h"+i); 
    int ttt=Integer.parseInt(ttl[i]); 
    int tte=ttt-1; 
    String m1=""+tte; 

    String ws[]=request.getParameterValues("j"+i); 
    int wss=Integer.parseInt(ws[i]); 
    int wsse=wss-1; 
    String m2=""+wsse; 

    String ht[]=request.getParameterValues("k"+i); 
    int htt=Integer.parseInt(ht[i]); 
    int htte=htt-1; 
    String m3=""+htte; 

    String mp[]=request.getParameterValues("l"+i); 
    int mpp=Integer.parseInt(mp[i]); 
    int mppe=mpp-1; 
    String m4=""+mppe; 

    String lv[]=request.getParameterValues("m"+i); 
    int lvv=Integer.parseInt(lv[i]); 
    int lvve=lvv-1; 
    String m5=""+lvve; 

    String mc[]=request.getParameterValues("n"+i); 
    int mcc=Integer.parseInt(mc[i]); 
    int mcce=mcc-1; 
    String m6=""+mcce; 

    String wb[]=request.getParameterValues("o"+i); 
    int wbb=Integer.parseInt(wb[i]); 
    int wbbe=wbb-1; 
    String m7=""+wbbe; 

    String wt[]=request.getParameterValues("p"+i); 
    int wtt=Integer.parseInt(wt[i]); 
    int wtt1=wtt-1; 
    String m8=""+wtt1; 

    String sql2="update nearloc set CA=?,RR=?,TTL=?,WS=?,HT=?,MP=?,LV=?,MC=?,WB=?,WT=? where location=?"; 
    PreparedStatement prst2=con.prepareStatement(sql2); 

    prst2.setString(1,m9); 

    prst2.setString(2,m); 
    prst2.setString(3,m1); 
    prst2.setString(4,m2); 
    prst2.setString(5,m3); 
    prst2.setString(6,m4); 
    prst2.setString(7,m5); 
    prst2.setString(8,m6); 
    prst2.setString(9,m7); 
    prst2.setString(10,m8); 
    prst2.setString(11, name); 


    if(prst2.executeUpdate()==1) 
    { 
     request.setAttribute("iidd",id); 
     RequestDispatcher    

      rd= request.getRequestDispatcher("FMS08_SendVeh.jsp"); 
     rd.forward(request, response); 
    } 

a,g,k,n 같은 수행 코드는 루프에서 체크 박스의 이름입니다. 나는 단지 체크 된 체크 박스의 값을 체크하고 데이터베이스에 저장하고 싶다. 문제는 어떤 체크 박스를 남기면 NullPointerException을 보여줍니다.

+1

포스트 스택 트레이스. –

답변

0
if (request.getParameterMap().containsKey("a"+i)) { 
    String ca[]=request.getParameterValues("a"+i); 
} 

또는

if (request.getParameter("a"+i) != null) { 
    String ca[]=request.getParameterValues("a"+i); 
} 
+0

나는 위의 코드를 시도했다. 불법 상태를 나타내는 코드 – user3106349

+0

또한 선택된 체크 박스에 대해 데이터베이스에있는 값을 null로 만들었다. – user3106349

+0

스 니펫은 적절한 테스트 코드이므로 예외가 생기면 더 많은 detills를 제공해야한다. 디버그 모드를 사용하고 예외를 발생시키고 세부 정보를 게시하는 코드를 찾습니다. – harshal

관련 문제