Ver Mensaje Individual
  #7 (permalink)  
Antiguo 09/05/2013, 12:10
soymari
 
Fecha de Ingreso: septiembre-2010
Mensajes: 67
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: carrito no recoge productos

Pues tengo la página consultarArticulos.jsp:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1" import="java.util.*,paquetes.*" session="true"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Consultar artículos</title>
</head>
<body>
<jsp:useBean id="datos" scope="session" class="paquetes.AccederBd" />
<jsp:useBean id="datosTabla" scope="session" class="paquetes.Articulo" />

<%
datos.conectar();
HttpSession sesion1=request.getSession();
%>

<p>Bienvenido&nbsp;<%=sesion1.getAttribute("usuari o") %></p>

<form name="formulario" method="get" action="alCarrito.jsp">

<%
Collection lista = datos.consultarArt();
if (lista != null)
{
if (lista.size () > 0)
{
for (Iterator i = lista.iterator(); i.hasNext(); )
{
Articulo art = (Articulo) i.next ();

%>
<li>Id: <input type="text" name="Id" value=<%= art.getId_art () %>><%= art.getId_art () %></li>
<li> <%= art.getSeccion () %></li>
<li> <%= art.getNombre () %></li>
<li> <%= art.getDescripcion () %></li>
<li>Precio: <input type="text" name="Precio" value=<%= art.getPrecio () %>><%= art.getPrecio () %></li>
<li> <%= art.getImagen () %></li>

<table border="1">
<tr>
<td align="center">Cantidad</td>
<td colspan="2">
<select name="Cantidad">

<option value="('<%=art.getId_art() + "0"%>');" selected="selected">0</option>
<option value="('<%=art.getId_art() + "1"%>');">1</option>
<option value="('<%=art.getId_art() + "2"%>');">2</option>
</select>
</td>
</tr>
</table>
<input type="Submit" name="Comprar" value="Comprar"/><br />

<br><a>--------------------------------</a>

<%

}
}
}
%>
</form></body></html>


Luego está la página alCarrito.jsp, que es a la que se llega a través del action del formulario:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1" session="true" import="java.util.*,paquetes.*"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<%@ page import="paquetes.Articulo"%>
<%@ page import="paquetes.AccederBd"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<jsp:useBean id="datos" scope="session" class="paquetes.AccederBd" />

<%
datos.conectar();
Integer id;
double precio;
String cantidad;

HttpSession sesion1 = request.getSession();

id=Integer.parseInt(request.getParameter("Id"));
precio=Double.parseDouble (request.getParameter("Precio"));
cantidad=request.getParameter("Cantidad");

%><p>El id es: <%=id %>El precio es:<%=precio %>y la cantidad<%=cantidad %></p>

</body>
</html>

Tengo también el bean de Articulo, aparte de los de conexión y otros más, el de artículo es:

public class Articulo {
Integer id_art;
String seccion;
String nombre;
String descripcion;
double precio;
String imagen;

Que es igual que la tabla de la base de datos, que la tengo con oracle.

Al poner en la página consultarArticulos.jsp "<option value="('<%=art.getId_art() + "0"%>');" me une el id del artículo con la cantidad, pero sólo me lo hace para el primer artículo.

Yo la verdad que si te ocurre otra forma de hacerlo mejor o más fácil, yo la verdad me siento totalmente perdida, ojalá puedas arrojar algo de luz.

Millones de gracias

Se me olvidaba, en la base de datos la tabla Articulo:

ID_ART NUMBER No - 1
SECCION VARCHAR2(4000) Yes - -
NOMBRE VARCHAR2(4000) Yes - -
DESCRIPCION VARCHAR2(4000) Yes - -
PRECIO NUMBER Yes - -
IMAGEN VARCHAR2(4000) Yes - -
1 - 6

Y los datos:

1 fotografia camara canon ios 365CH cámara reflex con 38 aumentos 359 -
21 informatica Portátil ASUS 35GRJH25 Tecnología Intel i7, 6GB RAM, 2Tb disco duro, tarjeta gráfica Intel Core Graphics 599 -

Sólo tengo metidos dos registros, para probar, el primer valor es el id y es muy gracioso porque debe ser que anduve haciendo algunas pruebas y no me guardaba bien los registros y pasamos del id 1 al 21!!! Por otr aparte el campo imagen aparece vacío porque ahí quería meter la ruta de la imagen para no sobrecargar la bbdd, sólo que tuviera la ruta, pero tampoco sé cómo se hace, donde hay que dejar las imágenes para que las pueda coger y eso.

Última edición por soymari; 09/05/2013 a las 12:15