Foros del Web » Programación para mayores de 30 ;) » Java »

Problema para actulizar en BD mysql con JSP

Estas en el tema de Problema para actulizar en BD mysql con JSP en el foro de Java en Foros del Web. Hola miembros del foro Tengo un inconveniente al hacer una actulizacion en esta pagina jsp. Agrego el codigo <%@ page import="java.io.*,java.util.*,java.net.*,java.sql. *" %> <%@ page ...
  #1 (permalink)  
Antiguo 18/08/2011, 22:19
 
Fecha de Ingreso: agosto-2011
Mensajes: 2
Antigüedad: 13 años, 3 meses
Puntos: 0
Información Problema para actulizar en BD mysql con JSP

Hola miembros del foro
Tengo un inconveniente al hacer una actulizacion en esta pagina jsp.
Agrego el codigo

<%@ page import="java.io.*,java.util.*,java.net.*,java.sql. *" %>
<%@ page session="true"%>
<%
String usuario="";
HttpSession sesionOK = request.getSession();
if(sesionOK.getAttribute("usuario")==null)
{
%>
<jsp:forward page="index.jsp">
<jsp:param name="error" value="Es obligatorio identificarse"/></jsp:forward>
<%
}else

{
usuario=(String)sesionOK.getAttribute("usuario");
}
%>
<html>
<head>
<title>Actualizar empleado</title>
<style type="text/css">
body {
background-image: url(images/bank1.JPG);
}
.titulo {
color: #FFF;
font-weight: bold;
text-align: center;
font-size: 24px;
font-style: italic;
}
.titulo2 {
color: #FFF;
font-weight: bold;
text-align: center;
font-size: 16px;
font-style: italic;
}
.parrafo {
color: #FFF;
}
</style></head>
<script type="text/javascript">
</script>
<body>
<%
String docempleado="", documentoempleado="", nomempleado="", apeempleado="", fechadenacimiento="", correopersonal="", correoficina="", tipodoc="";
String clave="", elcargo="", exteloficina="", fk_oficina="", stringtipodoc="", stringtipodoce="", stringoffice="", cargoadministrador="", cargocajero="", cargoasesor="";
Connection canal = null;// objetos de coneccion
ResultSet tabla= null; //interactua con la BD
Statement instruccion=null; //crea cache para trabajar con la base de datos
String strcon = "jdbc:mysql://localhost/pruebabancagaesn1?user=root&password=123456789";
try {
Class.forName("com.mysql.jdbc.Driver").newInstance ();
canal=DriverManager.getConnection(strcon);
instruccion = canal.createStatement(ResultSet.TYPE_SCROLL_SENSIT IVE, ResultSet.CONCUR_UPDATABLE);
}
catch(java.lang.ClassNotFoundException e){} catch(SQLException e) {};
if(request.getParameter("BUSCAR") != null) {
documentoempleado = request.getParameter("DOCUMENTO");
String q1 = "SELECT pk_doc_cliente, nombres, apellidos, fecha_de_nacimiento, email_pn, email_oficina, tipo_de_doc, password, cargo, extension_telefonica, fk_oficina_empleado "
+ "FROM clientes, clientes_persona_natural, empleados "
+ "WHERE pk_persona_natural = pk_doc_cliente AND pk_persona_natural = pk_empleado AND pk_doc_cliente = "+documentoempleado;
try{
tabla=instruccion.executeQuery(q1);
while (tabla.next()){
docempleado=tabla.getString(1); nomempleado=tabla.getString(2); apeempleado=tabla.getString(3);
fechadenacimiento=tabla.getString(4); correopersonal=tabla.getString(5); correoficina=tabla.getString(6);
tipodoc=tabla.getString(7); clave=tabla.getString(8); elcargo=tabla.getString(9);
exteloficina=tabla.getString(10); fk_oficina=tabla.getString(11);
}
}catch(SQLException e){};
if (docempleado.equals(documentoempleado)){
if (tipodoc.equals("CC")){stringtipodoc="checked=chec ked"; }else {stringtipodoce="checked=checked";}
if (elcargo.equals("Administrador")){cargoadministrad or= "selected=selected";}
if (elcargo.equals("Cajero")){cargocajero= "selected=selected";}
if (elcargo.equals("Asesor")){cargoasesor= "selected=selected";}
out.println("<p>&nbsp;</p><p>&nbsp;</p><form action= actualizarempleado.jsp method=post><p align=center>"
+"<div align=center><table width=50% border=0>"
+"<tr> <td height=32 colspan=2 bgcolor=#009900 class=titulo>ACTUALIZACION EMPLEADOS</td> </tr>"
+"<tr> <td width=60% class=parrafo >Nro DOCUMENTO:</td> <td width=40% ><INPUT NAME=NRODOC TYPE=TEXT VALUE= "+documentoempleado+ " size=40></td> </tr>"
+"<tr> <td width=60% class=parrafo >NOMBRES:</td> <td width=40% ><INPUT NAME=NOMBRES TYPE=TEXT VALUE= "+nomempleado+ " size=40></td> </tr>"
+" <tr> <td class=parrafo>APELLIDOS:</td> <td><INPUT NAME=APELLIDOS TYPE=TEXT VALUE= "+ apeempleado +" size=40></td> </tr>"
+" <tr> <td class=parrafo>FECHA DE NACIMIENTO:</td> <td><INPUT NAME=FECHANACIMIENTO TYPE=TEXT VALUE= "+ fechadenacimiento +" size=40></td> </tr>"
+" <tr> <td class=parrafo>TIPO DE DOCUMENTO </td> <td>"
+" <label> <input name=RadioGroup1 type=radio id=RadioGroup1_0 value=CC "+ stringtipodoc +" /> CC</label>"
+" <label> <input name=RadioGroup1 type=radio id=RadioGroup1_1 value=CE "+ stringtipodoce +" /> CE</label> </td> </tr>"
+"<tr> <td class=parrafo>PASSWORD:</td> <td><INPUT NAME=PASSWORD TYPE=TEXT VALUE= "+ clave +" size=40></td> </tr>"
+"<tr> <td class=parrafo>EMAIL:</td> <td><INPUT NAME=EMAIL TYPE=TEXT VALUE= "+ correopersonal +" size=40></td> </tr>"
+"<tr> <td class=parrafo>CARGO:</td> <td><select name=jumpMenu id=jumpMenu>"
+"<option "+ cargoadministrador +">Administrador</option> <option "+ cargocajero +">Cajero</option> <option "+ cargoasesor +">Asesor</option></select></td> </tr>"
+"<tr> <td height=32 colspan=2 bgcolor=#009900 class=titulo>DATOS DE LA OFICINA</td> </tr>"
+"<tr> <td class=parrafo>EXTENSION TELEFONICA</td> <td><INPUT NAME=EXTENCION TYPE=TEXT VALUE= "+ exteloficina +" size=40></td> </tr>"
+"<tr> <td class=parrafo>EMAIL OFICINA</td> <td><INPUT NAME=EMAILOFICINA TYPE=TEXT VALUE= "+ correoficina +" size=40></td> </tr> </table>");
try{
tabla=instruccion.executeQuery("SELECT pk_oficina, nombrebanco, tipo, pais, departamento_estado, ciudad_municipio, direccion "
+ "FROM oficinas, bancos WHERE fk_banco = pk_banco");
out.println("<p>&nbsp;</p><div align=center> <table width=50% border=0> <tr class=titulo>"
+" <td colspan=7 bgcolor=#009900>Escoja la Oficina del Empleado</td> </tr>"
+"<tr class=titulo2>"
+"<td bgcolor=#009900><div align=center>BANCO</div></td>"
+"<td bgcolor=#009900><div align=center>TIPO</div></td>"
+"<td bgcolor=#009900><div align=center>PAIS</div></td>"
+"<td bgcolor=#009900><div align=center>DEPARTAMENTO ESTADO</div></td>"
+"<td bgcolor=#009900><div align=center>CIUDAD</div></td>"
+"<td bgcolor=#009900><div align=center>DIRECCION</div></td>"
+"<td bgcolor=#009900><div align=center>SELECCION</div></td></tr>");
int cont =0;
while(tabla.next()){
out.println("<tr>");
out.println("<td class=parrafo>"+tabla.getString(2)+"</td>");
out.println("<td class=parrafo>"+tabla.getString(3)+"</td>");
out.println("<td class=parrafo>"+tabla.getString(4)+"</td>");
out.println("<td class=parrafo>"+tabla.getString(5)+"</td>");
out.println("<td class=parrafo>"+tabla.getString(6)+"</td>");
out.println("<td class=parrafo>"+tabla.getString(7)+"</td>");
if (fk_oficina.equals(tabla.getString(1))){stringtipo doc="checked=checked"; }
out.println("<td class=parrafo><label> <input type=radio name=RadioGroup2 value="+tabla.getString(1)+" id=RadioGroup2_"+cont+" "+stringtipodoc+"/> </label></td>");
out.println("</tr>");
stringtipodoc="";
cont = cont +1;
};//fin while
out.println("</table> </div>");
}//fin try no usar;al final de dos o nas catchs
catch(SQLException e){};
tabla.close();
out.println(" <div align=center> <INPUT TYPE=SUBMIT NAME=EDITAR VALUE=EDITAR> </div> </p> </div></form>");
}else{
out.println("<script>alert('Nro. de Documento No Encontrado')</script>");
}
}

...continua....
  #2 (permalink)  
Antiguo 18/08/2011, 22:20
 
Fecha de Ingreso: agosto-2011
Mensajes: 2
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Problema para actulizar en BD mysql con JSP

continua...

if(request.getParameter("EDITAR") != null) {
String password = request.getParameter("PASSWORD");
String empledotipodoc = request.getParameter("RadioGroup1");
String empledonrodoc = request.getParameter("NRODOC");
String q2 = "UPDATE clientes SET pk_doc_cliente = '"+ empledonrodoc +"', password = '"+ password +"', tipo_de_doc = '"+ empledotipodoc +"' "
+ "WHERE pk_doc_cliente= '"+ documentoempleado +"';";
try{
instruccion.executeUpdate(q2);
}
catch(SQLException e) {
out.println("SE PRODUJO UN ERROR ACTULIZANDO LOS DATOS CLIENTES<BR>");
out.println(e);
};
String name = request.getParameter("NOMBRES");
String lastname = request.getParameter("APELLIDOS");
String birdate = request.getParameter("FECHANACIMIENTO");
String personalemail = request.getParameter("EMAIL");
q2 = "UPDATE clientes_persona_natural SET nombres = '"+ name +"', apellidos = '"+ lastname +"', fecha_de_nacimiento = '"+ birdate +"', email_pn = '"+ personalemail +"' "
+ "WHERE pk_persona_natural = '"+ documentoempleado +"';";
try{
instruccion.executeUpdate(q2);
}
catch(SQLException e) {
out.println("<BR>SE PRODUJO UN ERROR ACTULIZANDO PERSONA NATURAL LOS DATOS<BR>");
out.println(e);
};
String empleadoemail = request.getParameter("EMAILOFICINA");
String empleadocargo = request.getParameter("jumpMenu");
String empleadoext = request.getParameter("EXTENCION");
String empleadooficina = request.getParameter("RadioGroup2");
q2 = "UPDATE empleados SET email_oficina = '"+ empleadoemail +"', cargo = '"+ empleadocargo +"', extension_telefonica = "+ empleadoext +", fk_oficina_empleado = "+ empleadooficina
+" WHERE pk_empleado = '"+ documentoempleado +"';";
try{
instruccion.executeUpdate(q2);
}
catch(SQLException e) {
out.println("<BR>SE PRODUJO UN ERROR ACTULIZANDO EMPLEADO LOS DATOS<BR>");
out.println(e);
};
out.println("<script>alert('REGISTRO EDITADO')</script>");
instruccion.close(); canal.close();
}
out.println("<p>&nbsp;</p><FORM ACTION=actualizarempleado.jsp METHOD=post >"
+"<p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p>"
+"<tr> <td colspan=2><div align=center><span class=titulo>DOCUMENTO A EDITAR:</span> <INPUT TYPE=TEXT NAME=DOCUMENTO><p>&nbsp;"
+"<INPUT TYPE=SUBMIT NAME=BUSCAR VALUE=BUSCAR ></div>"
+"</FORM>");
%>
</body>
</html>
  #3 (permalink)  
Antiguo 19/08/2011, 01:37
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años, 6 meses
Puntos: 306
Respuesta: Problema para actulizar en BD mysql con JSP

Primero te has olvidado de decir cual es tú problema, y segundo deberías ser un poco más selectivo a la hora de poner tu código, cuanto más texto pongas, menos ganas tendrá la gente de leerlo y más trabajo da buscar problemas.

Otra cosa, las exception muestran información sobre los errores, el usuario preferirá un mensaje tipo "SE PRODUJO UN ERROR ACTULIZANDO PERSONA NATURAL LOS DATOS", pero tú como programador necesitas ver la traza de la excepción, ya que en ella se da información sobre el problema.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #4 (permalink)  
Antiguo 22/08/2011, 07:53
 
Fecha de Ingreso: febrero-2011
Mensajes: 672
Antigüedad: 13 años, 9 meses
Puntos: 78
Respuesta: Problema para actulizar en BD mysql con JSP

Madre mía, eso es ilegible...
  #5 (permalink)  
Antiguo 22/08/2011, 09:02
 
Fecha de Ingreso: enero-2011
Mensajes: 47
Antigüedad: 13 años, 10 meses
Puntos: 5
Respuesta: Problema para actulizar en BD mysql con JSP

Me tome el tiempo de leer todo lo que has puesto pero, ¿cual es el problema que tienes??? o no lei bien o no te das entender bien...puedes ser mas especifico en cual es tu problema??

Etiquetas: jsp, resultset, updatable, updatesql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:15.