I facing a problem with checkbox value that already exists inside the database. so how can I retrieve those value from another database table? the table subject and service below is what I want. But based on the code below the SERVICE TABLE on SUBJECTID COLUMN producing null value. How to remove those null value with subjectid value? I don't understand that well because I am a newbie.
SUBJECT TABLE SUBJECTID SUBJECTNAME ----------- ---------------- PT3_ENGLISH ENGLISH PT3_BM BAHASA MELAYU PT3_SC SCIENCE PT3_MATH MATHEMATICS CURRENT SERVICE TABLE IN DB SERVICE TABLE SERVICEID SERVICECATEGORY SERVICETYPE STUDENTID SUBJECTID --------- --------------- ----------- --------- ---------- 123 PT3 ORDINARY 20345 null
TABLE THAT I WANT.
SERVICE TABLE SERVICEID SERVICECATEGORY SERVICETYPE STUDENTID SUBJECTID --------- --------------- ----------- --------- ---------- 123 PT3 ORDINARY 20345 PT3_ENGLISH PT3_BM PT3_SC PT3_MATH
here my registration.jsp
<u><center><h2>Services Information </h2></center></u> <hr> </div> <br> <div class="one_third first">Service Type: <select name="servicetype" id="servicetype" required> <option value="">- Service Type -</option> <option value="ORDINARY">ORDINARY</option> <option value="PERMATA">PERMATA</option> <option value="PRIVATE">PRIVATE</option> <option value="PMC">PMC</option> </select> </div> <div class="one_half">Service Category: <select name="servicecategory" id="servicecategory" required> <option value="">-Service Category -</option> <option value="UPSR">UPSR</option> <option value="PT3">PT3</option> <option value="SPM">SPM</option> </select> </div> <BR><BR><BR><h2>Subject</h2> <div class="three_quarter first"> <h3>UPSR</h3> <input type="checkbox" class="dissable" onclick="check();" name="UPSR" value="UPSR_ENGLISH" id="subjectId">English </td> </div> <br><br><hr><br><br> <div class="three_quarter first"> <h3>PT3</h3> <input type="checkbox" class="dissable" onclick="check();" name="PT3" value="PT3_ENGLISH" id="subjectId">English </td> <input type="checkbox" class="dissable" onclick="check();" name="PT3" value="PT3_BM" id="subjectId">Bahasa Melayu</td> <input type="checkbox" class="dissable" onclick="check();" name="PT3" value="PT3_SC" id="subjectId">Science</td> <input type="checkbox" class="dissable" onclick="check();" name="PT3" value="PT3_MATH" id="subjectId">Mathematics</td> </div--> <br><br><hr><br><br> <div class="block clear"> <h3>SPM</h3> <input type="checkbox" class="dissable" onclick="check();" name="SPM" value="SPM_ENGLISH" id="subjectId">English </td> <input type="checkbox" class="dissable" onclick="check();" name="SPM" value="SPM_BM" id="subjectId">Bahasa Melayu</td> <input type="checkbox" class="dissable" onclick="check();" name="SPM" value="SPM_SC" id="subjectId">Science</td> <input type="checkbox" class="dissable" onclick="check();" name="SPM" value="SPM_MATH" id="subjectId">Mathematics</td> <input type="checkbox" class="dissable" onclick="check();" name="SPM" value="SPM_ADDMATH" id="subjectId">Additional Mathematics </td> <input type="checkbox" class="dissable" onclick="check();" name="SPM" value="SPM_HISTORY" id="subjectId">History</td> <input type="checkbox" class="dissable" onclick="check();" name="SPM" value="SPM_ECONOMY" id="subjectId">Economy</td> <input type="checkbox" class="dissable" onclick="check();" name="SPM" value="SPM_PHYSIC" id="subjectId">Physics</td><br> <input type="checkbox" class="dissable" onclick="check();" name="SPM" value="SPM_CHEMISTRY" id="subjectId">Chemistry</td> <input type="checkbox" class="dissable" onclick="check();" name="SPM" value="SPM_BIOLOGY" id="subjectId">Biology</td> <input type="checkbox" class="dissable" onclick="check();" name="SPM" value="SPM_ACCOUNT" id="subjectId">Account</td> </div>
here is my Servlet registerServlet.java
String[] sv; String[] sv2; String[] sv3; sv = request.getParameterValues("UPSR"); sv2 = request.getParameterValues("PT3"); sv3 = request.getParameterValues("SPM"); String subjectId= ""; //first declare the variable to store the value to store loop value String service = request.getParameter("servicecategory"); // retrieve parameter value // int i=0; declare variable for loop if(service.equalsIgnoreCase("UPSR")){ for(int i = 0; i <sv.length; i++){ // for loop to read one by one all the checkbox checked status if(i<sv.length-1){ subjectId = subjectId +sv[i]+ ","; //store value of checked checkbox } else{ subjectId = subjectId + sv[i]; } } } else if(service.equalsIgnoreCase("PT3")){ for(int i = 0; i <sv2.length; i++){ if(i<sv2.length-1){ subjectId = subjectId +sv2[i]+ ","; } else{ subjectId = subjectId + sv2[i]; } } } else if(service.equalsIgnoreCase("SPM")){ for(int i = 0; i <sv3.length; i++){ if(i<sv3.length-1){ subjectId = subjectId +sv3[i]+ ","; } else{ subjectId = subjectId + sv3[i]; } } } svb.setServiceid(request.getParameter("serviceid")); svb.setStudentid(request.getParameter("studentid")); svb.setServicecategory(service); svb.setServicetype(request.getParameter("servicetype")); sub.setSubjectId(subjectId); sub.setSubjectName(request.getParameter("subjectName")); System.out.println(service); sb = RegisterDAO.registerStudent(sb); svb = RegisterDAO.registerService(svb); sub = RegisterDAO.registerSubject(sub);
last is my registerDAO.java containing a certain part of registration subject only
//registersubject public static SubjectBean registerSubject(SubjectBean bean) { // preparing some objects for connection System.out.println("JIJIJI SUBJECT"); Statement stmt = null; String subjectId = bean.getSubjectId(); String searchQuery = "select * from subject where subjectId='" + subjectId +"'"; //String query = "select * from SUBJECT where ROWNUM <=1 ORDER BY SUBJECTID DESC"; // "System.out.println" prints in the console; Normally used to trace the process System.out.println("Your subject ID is " + subjectId); //System.out.println("Your subject name is " + subjectName); System.out.println("Query: " + searchQuery); try { // connect to DB currentCon = connectionManager.getConnection(); stmt = currentCon.createStatement(); rs = stmt.executeQuery(searchQuery); boolean more = rs.next(); subjectId=rs2.getString("subjectId"); System.out.println("\n the subject are : "+subjectId); bean.setValid(true); bean.setSubjectId(subjectId); bean.setSubjectName(rs2.getString("subjectName")); // if subject does not exist set the isValid variable to false if (!more) { System.out.println("Sorry, no subject registered! Please ask the clerk first"); bean.setValid(false); } // if user exists set the isValid variable to true //else if (more) { //System.out.println("Added Subject!"); //System.out.print("3"); //stmt.executeUpdate(searchQuery); //System.out.print("4"); //System.out.print("1 new row inserted in table subject"); //bean.setValid(true); //} } catch (Exception ex) { System.out.println("Log In failed: An Exception has occurred! " + ex); } // some exception handling finally { if (rs != null) { try { rs.close(); } catch (Exception e) { } rs = null; } if (stmt != null) { try { stmt.close(); } catch (Exception e) { } stmt = null; } if (currentCon != null) { try { currentCon.close(); } catch (Exception e) { } currentCon = null; } } return bean;
Please help me. thanks in advance.
Ads