Foros del Web » Programando para Internet » ASP Clásico »

Pedidos

Estas en el tema de Pedidos en el foro de ASP Clásico en Foros del Web. Hola a todos, quiero poder realizar pedidos (carrito), la idea es que el usuario de valide como cliente, entonces poder realizar compras, esto en principio ...
  #1 (permalink)  
Antiguo 05/12/2002, 07:12
 
Fecha de Ingreso: noviembre-2002
Mensajes: 249
Antigüedad: 21 años, 7 meses
Puntos: 0
Pedidos

Hola a todos,

quiero poder realizar pedidos (carrito), la idea es que el usuario de valide como cliente, entonces poder realizar compras, esto en principio ningún problema.

Dentro de la página principal pondré diferentes links a páginas de productos, separados por categorías. El link quiero que sea a la misma página .asp, enviaré la familia dependiendo del link y cargara la pantalla, con una foto, la referencia, descrición, ...

Esto tampoco ningún problema. ya lo tengo hecho.

La idea es que pueda poner la cantidad y poder añadir al pedido, (que sea una tabla de la base de datos).

En principio he puesto un <input> para añadir la cantidad, pero no tengo muy claro como hacer para que añada a la tabla depedidos la línea.

(el problema no es como añadir un registro sino que debo hacer).

He pensado hacer una función que añada, pero como sé que datos debo añadir?

No se si me explico!!!
  #2 (permalink)  
Antiguo 05/12/2002, 09:10
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Exacto, la idea es almacenar estos datos dentro de una tabla, estos datos permancen allí de manera temporal, todo lo que suba a su carrito se registra en esa tabla, y se queda hasta que el usuario complete total o parcialmente su pedido.
No necesitas muchos datos en esta tabla, en realidad solo necesitas aquellos que te dejen identificar quién compra y qué es lo que compra, de este modo yo añadiría los campos: cliente_id, producto_id y cantidad.
El cliente_id almacena el id que le otorgaste al momento del registro, creo que el campo producto_id está muy claro no? y la cantidad por cada "x" id de producto, así que ocupará un registro en la DB por cada producto distinto que tenga indepedientemente de la cantidad...

Obviamente estos datos se pueden alterar desde el carrito de compra y por supuesto se deberán eliminar tan pronto como confirmes una venta.

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 05/12/2002, 09:19
 
Fecha de Ingreso: febrero-2002
Ubicación: Mi ASP Bunker
Mensajes: 397
Antigüedad: 22 años, 3 meses
Puntos: 1
+ o -

Para lo basico en el carrito haces :

<input name="cantidad" value="1">

luego recoges en otra pagina mediante :

<%
cantidad = Resquest.Form("cantidad")
...

sql = "INSERT INTO Pedidos (Cantidad) VALUES (" & cantidad & ")"
...
%>

eso ?
  #4 (permalink)  
Antiguo 05/12/2002, 09:42
 
Fecha de Ingreso: noviembre-2002
Mensajes: 249
Antigüedad: 21 años, 7 meses
Puntos: 0
Bueno, parece ser que la cosa ha de funcionar + o - como he pensado.

El codigo que he hecho es este:

<%@ LANGUAGE=VBScript %>
<% DIM BD, RS, SQL
Set BD = Server.CreateObject("ADODB.Connection")
BD.Open "DSN=imateu.com.per"

Set RS = Server.CreateObject("ADODB.Recordset")

SQL = "SELECT * FROM per_art where familia='" & Request.QueryString("familia") & "'"
RS.Open SQL, BD

if RS.EOF then
Response.Redirect "default.htm"
end if
%>

<table>
<tr>
<td width="55"></td>
<td width="100">Referencia</font></td>
<td width="300">Descripción</font></td>
<td width="50"><p align="center">C/Caja</font></td>
<td width="50"><p align="center">P/Unid</font></td>
<td width="50"><p align="center">Cajas</font></td>
</tr>
</table>

<form name="control">

<table border="0">
<% Do While Not rs.EOF %>
<tr>
<% if rs("foto") <> "" then %>
<td width="55"><img src="./images/<%=rs("Foto")%>" name=imagen></td>
<%else%>
<td width="55"><font color="#000080" size="1">NO FOTO</font></td>
<%end if%>
<td width="100" valign="top"><% Response.Write rs("Referencia")%></td>
<td width="300" valign="top"><% Response.Write rs("Descripcion")%>&nbsp;</td>
<td width="50" valign="top"><p align="right"><% Response.Write rs("Cantidad")%>&nbsp;</td>
<td width="50" valign="top"><p align="right"><% Response.Write rs("Precio")%>&nbsp;</td>
<td width="50" valign="top"><input name="c_" size=3 style="float: right" ></td>
<td widht="10" valign="top"><a href=""><img src="go.gif" border="0"></a><tr>
<% rs.Movenext %>
</tr>
<% Loop %>
</table>

</form>


Esta es la página que biene del link con el valor de familia, para diferenciar los artículos que quiero que salgan.

Me pone todos los artículos y lo que no tengo claro es:

He puesto un link con la imagen "go.gif".

Aqui es donde no lo tengo claro, se que debo hacer el insert a la nueva tabla, pero como hago para ir a otro sitio y como cargo los valores?

Me he explicado bien?
  #5 (permalink)  
Antiguo 05/12/2002, 16:07
 
Fecha de Ingreso: noviembre-2002
Mensajes: 249
Antigüedad: 21 años, 7 meses
Puntos: 0
A ver si me explico mejor,

en el <a href="javascript:xxx() "><img src="go.gif></a>,
como se haria en asp, para poder llamar a una función igual que se hace en javascripts.

Entonces, en la función podria añadir el registro a la tabla de pedido.
  #6 (permalink)  
Antiguo 08/12/2002, 02:41
 
Fecha de Ingreso: noviembre-2002
Mensajes: 249
Antigüedad: 21 años, 7 meses
Puntos: 0
Al final, he decidido hacer esto, no se si hay alguna manera mejor de hacerlo.

Para agragar una línea, hago un link a la misma página, añadiendo pedido con un valor a 1.


<td widht="10" valign="top"><a href="pag1.asp?familia=<%Response.Write rs("familia")%>;pedido=1"><img src="go.gif" border="0"></a><tr>

Al principio de la página, pongo esto:

<%@ LANGUAGE=VBScript %>
<% DIM BD, RS, SQL
Set BD = Server.CreateObject("ADODB.Connection")
BD.Open "DSN=imateu.com.per"

Set RS = Server.CreateObject("ADODB.Recordset")

SQL = "SELECT * FROM per_art where familia='" & Request.QueryString("familia") & "'"
RS.Open SQL, BD
Rs.MoveFirst

%>
<%if Request.QueryString("pedido") = 1 then%>
Aquí debo añadir la línea al bd. <%
pedido = 0
%>
<%End if%>


La cuestión, es, esto es lo correcto?

Por que me da el siguiente error en rs.MoveFirst

ADODB.Recordset error '800a0bcd'

El valor de BOF o EOF es True, o el actual registro se eliminó; la operación solicitada requiere un registro actual.

/usuarios/cro/pag1.asp, line 10


Gracias.
  #7 (permalink)  
Antiguo 08/12/2002, 04:15
 
Fecha de Ingreso: noviembre-2002
Mensajes: 249
Antigüedad: 21 años, 7 meses
Puntos: 0
Bueno, yo mismo me contesto!!!

El error, ya lo tengo solucionado, y parece ser que de momento funciona.

Igualmente, si alguien cree que hay otra manera de hacerlo, o me puede sugerir alguna cosa, se lo agradeceria.

De momento sigo...
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 11:10.