I facing a problem with checkbox value that already exists inside the database. so how can I retrieve those value into 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 (Values inside subject table already exists)
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.