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

cantidad html x precio jsp

Estas en el tema de cantidad html x precio jsp en el foro de Java en Foros del Web. hola a todos ojala me puedan hechar la mano :s tengo el sig html que lo q hace es q el usuario elija alguna clave ...
  #1 (permalink)  
Antiguo 27/09/2010, 12:57
Avatar de sanchezg  
Fecha de Ingreso: abril-2009
Mensajes: 76
Antigüedad: 15 años
Puntos: 0
cantidad html x precio jsp

hola a todos ojala me puedan hechar la mano :s
tengo el sig html que lo q hace es q el usuario elija alguna clave del servicio q requiere y la cantidad del mismo:
Código HTML:
Ver original
  1. <table width="704" height="322" border="0">
  2.   <tr>
  3.     <td height="94" colspan="3"><div align="center"><img src="compu.gif" width="486" height="50"></div></td>
  4.   </tr>
  5.   <tr>
  6.     <td width="405"><div align="center" class="Estilo1 Estilo2">CONCEPTO</div></td>
  7.     <td width="136"><div align="center" class="Estilo3">IMPORTE</div></td>
  8.     <td width="149"><div align="center"><span class="Estilo3">CANTIDAD</span></div></td>
  9.   </tr>
  10.   <tr>
  11.     <td><span class="Estilo11">
  12.       <input name="clave" type="checkbox" id="clave" value="1">
  13.       BONO POR 10 HRS.
  14. </span></td>
  15.     <td><div align="center" class="Estilo1 Estilo12">$ 40.00</div></td>
  16.     <td><div align="center">
  17.       <span class="Estilo1 Estilo12"><span class="Estilo11">
  18.       <input name="cantidad" type="text" id="cantidad">
  19.       </span></span> </div></td>
  20.   </tr>
  21.   <tr>
  22.     <td><span class="Estilo11">
  23.       <input name="clave" type="checkbox" id="clave" value="2">
  24.       BONO MENSUAL </span></td>
  25.     <td><div align="center" class="Estilo13">$ 70.00 </div></td>
  26.     <td><div align="center">
  27.       <span class="Estilo1 Estilo12"><span class="Estilo11">
  28.       <input name="cantidad" type="text" id="cantidad">
  29.       </span></span> </div></td>
  30.   </tr>
  31.   <tr>
  32.     <td><span class="Estilo11">
  33.       <input name="clave" type="checkbox" id="clave" value="3">
  34.       BONO SEMESTRAL </span></td>
  35.     <td><div align="center"><span class="Estilo13">$ 170.00 </span></div></td>
  36.     <td><div align="center">
  37.       <span class="Estilo1 Estilo12"><span class="Estilo11">
  38.       <input name="cantidad" type="text" id="cantidad">
  39.       </span></span> </div></td>
  40.   </tr>
  41.   <tr>
  42.     <td><span class="Estilo11">
  43.       <input name="clave" type="checkbox" id="clave" value="4">
  44. HORA DE USO POR COMPUTADORA </span></td>
  45.     <td><div align="center"><span class="Estilo1 Estilo12"></span>
  46.       <div align="center" class="Estilo13">$ 5.00 </div>
  47.       <span class="Estilo1 Estilo12"></span></div></td>
  48.     <td><div align="center">
  49.       <span class="Estilo1 Estilo12"><span class="Estilo11">
  50.       <input name="cantidad" type="text" id="cantidad">
  51.       </span></span></div></td>
  52.   </tr>
  53.   <tr>
  54.     <td><span class="Estilo11">
  55.       <input name="clave" type="checkbox" id="clave" value="5">
  56. HOJA DE IMPRESION  </span></td>
  57.     <td><div align="center" class="Estilo13">$ 1.00 </div></td>
  58.     <td><div align="center">
  59.       <span class="Estilo1 Estilo12"><span class="Estilo11">
  60.       <input name="cantidad" type="text" id="cantidad">
  61.       </span></span> </div></td>
  62.   </tr>
  63.   <tr>
  64.     <td colspan="3"><div align="center" class="Estilo13"></div>    <div align="center">
  65.       <p><input type="submit" name="Submit" value="RECIBO">
  66.           </p>
  67.       </div></td>
  68.   </tr>

q a su vez manda los datos a mi jsp q busca las claves seleccionadas y recupera el concepto o titulo del servicio, y su precio. lo q necesito es saber como le puedo hacer para multiplicar la cantidad enviada del html por el precio recuperado del jsp????????? estoy en blanco con esto de java porfis ayudenme
Código:
<%
Connection canal = null;
ResultSet tabla= null;
Statement instruccion=null;
String sitiobase = "c:/c/material.mdb";
String strcon= "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=" + sitiobase;
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
canal=DriverManager.getConnection(strcon);
instruccion = canal.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
} catch(java.lang.ClassNotFoundException e){} catch(SQLException e) {};
String SQLString = "SELECT TOP 10 * FROM conceptos";
if (request.getParameterValues("clave").length > 0 ) {
    SQLString = "SELECT * FROM conceptos WHERE clave IN (";
    for (String s : request.getParameterValues("clave")) {
        SQLString += "\'" + s + "\', ";
    }
    SQLString = SQLString.substring(0, SQLString.lastIndexOf(',')) + ")";
}
try { tabla = instruccion.executeQuery(SQLString);
while (tabla.next()) {

out.println("CLAVE:&nbsp;<INPUT TYPE=TEXT NAME=clave VALUE="+ tabla.getString(1)+ "><BR><BR>");
out.println("TITULO:&nbsp;<INPUT TYPE=TEXT NAME=TITULO VALUE= '"+ tabla.getString(2)+ "'SIZE='100'><BR><BR>");
out.println("PRECIO:&nbsp;<INPUT TYPE=TEXT NAME=PRECIO VALUE= "+ tabla.getString(3)+ "><BR><BR>");
}
tabla.close();instruccion.close();canal.close();
} catch(SQLException e) {out.print(e);} catch(Exception ex){};
%>
  #2 (permalink)  
Antiguo 27/09/2010, 14:20
 
Fecha de Ingreso: enero-2008
Mensajes: 197
Antigüedad: 16 años, 3 meses
Puntos: 10
Respuesta: cantidad html x precio jsp

aaayyyy Dios! yo empezaría por hacer un refactor del jsp, separar lo de la conexión a la base de datos, la generación del query ya que puedes sufrir de un ataque de SQLInjection, quitar el código del JSP y meterlo en talvez un Servlet, quitar la creación de los input desde código Java, manejar las excepciones etc...

pero, veamos ya tienes los valores que quieres con:

Código Java:
Ver original
  1. request.getParameterValues("clave");

y ya tienes el resultado de tu query:

Código Java:
Ver original
  1. tabla = instruccion.executeQuery(SQLString);

así que lo que sigue es obtener el valor que quieres multiplicar viendo tu código creo que es así: (usa get float aunque te recomiendo mejor hacer operaciones monetarias con BigDecimal)

Código Java:
Ver original
  1. float precio = tabla.getFloat(3);

y le sigue obtener el valor que quieres del request por el que se va a multiplicar y creo que eso sería todo espero poder haberte ayudado.

Código Java:
Ver original
  1. int cantidad = Integer.parseInt(request.getParameter("tu_parametro_de_cantidad"));

Saludos!
  #3 (permalink)  
Antiguo 28/09/2010, 12:42
Avatar de sanchezg  
Fecha de Ingreso: abril-2009
Mensajes: 76
Antigüedad: 15 años
Puntos: 0
Respuesta: cantidad html x precio jsp

vas a decir q q mensa pero no me cabia en la cabeza como es q si hacia una sola multiplicacion me haria automaticamente todos los parametros q le habia pasado jiji si me funciono y mucho gracias mmmmmmmm y de plano tengo mucho relajo? :s esq soy nueva pero grax
  #4 (permalink)  
Antiguo 29/09/2010, 07:10
 
Fecha de Ingreso: enero-2008
Mensajes: 197
Antigüedad: 16 años, 3 meses
Puntos: 10
Respuesta: cantidad html x precio jsp

Hola :)

La verdad si, si tienes mucho relajo en tu jsp, estás mezclando las capas de tu aplicación por lo que conforme crezca se va a hacer mucho más compleja y difícil de mantener. Si tuvieras que cambiar algo no habría más que analizar todo el jsp para primero ver "qué hace" y después tratar de hacer el cambio.

Por otro lado, si tuvieras separado en capas tu aplicación o usando un modelo MVC podrías mejorar muchísimo tu aplicación, como resultado sería: flexible, fácil de modificar y mantener, robusta, estable etc.

Si gustas yo te puedo ayudar a separarla en capas :) (ya que es más fácil hablar que hacer jejeje)

Saludos!!!!
  #5 (permalink)  
Antiguo 30/09/2010, 12:53
Avatar de sanchezg  
Fecha de Ingreso: abril-2009
Mensajes: 76
Antigüedad: 15 años
Puntos: 0
Respuesta: cantidad html x precio jsp

pues si te agradeceria muchisisisismo si me ayudaras ya q estoy tan verd q ni entendi muho de lo q me dijiste q tenia mal jajaja ah y q crees de mi multiplicacion al hacerlo asi:
Código HTML:
Ver original
  1. float precio = tabla.getFloat(3);
  2. int cantidad = Integer.parseInt(request.getParameter("cantidad"));
  3. float total=precio* cantidad;
solo me multiplica por la cantidad q haya puesto primero, es decir si mando mas de 1 cantidad solo toma en cuanta la 1 :( no me recibe ninguna otra

Etiquetas: cantidad, html, jsp, precio
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 19:16.