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

lista/menu dimanica inserast en una tabla

Estas en el tema de lista/menu dimanica inserast en una tabla en el foro de ASP Clásico en Foros del Web. Hola tengo un pregunta; Tengo este codigo <select name="color" size="1"> <option value="<%= strDesc00 %>" selected><%= strDesc00 %></option> <option value="<%= strDesc01 %>" selected><%= strDesc01 %></option> <option ...
  #1 (permalink)  
Antiguo 18/08/2005, 10:29
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
lista/menu dimanica inserast en una tabla

Hola tengo un pregunta;
Tengo este codigo
<select name="color" size="1">
<option value="<%= strDesc00 %>" selected><%= strDesc00 %></option>
<option value="<%= strDesc01 %>" selected><%= strDesc01 %></option>
<option value="<%= strDesc02 %>" selected><%= strDesc02 %></option>
<option value="<%= strDesc03 %>" selected><%= strDesc03 %></option>
<option value="<%= strDesc04 %>" selected><%= strDesc04 %></option>
<option value="<%= strDesc05 %>" selected><%= strDesc05 %></option>
<option value="<%= strDesc06 %>" selected><%= strDesc06 %></option>
<option value="<%= strDesc07 %>" selected><%= strDesc07 %></option>
<%
datos= Server.MapPath ( "tienda.db " )
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open Provider=Microsoft.Jet.OLEDB.4.0;Data source="& datos &";"
SQL = "SELECT * FROM stock" Set rs = conn.Execute(SQL)
While Not rs.EOF
%>
<%
rs.MoveNext
Wend
rs.Close
%>
</select>
ESto toma los datos de una tabla de access y lo quiero es introducir el valor q seleccione de uno de ellos de arriba insertarlo en otra tabla donde me detecta el IDPRODUCT y una de las 7 opciones.
Alguien me puede ayudar?
  #2 (permalink)  
Antiguo 21/08/2005, 23:36
Avatar de mamon  
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 1.302
Antigüedad: 22 años, 5 meses
Puntos: 3
envia el formulario y recuperas el ID con el request.form("color")
eso quieres?
__________________
Yo si sé lo que es trabajar duro, porque lo he visto.
  #3 (permalink)  
Antiguo 22/08/2005, 04:17
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
No entiendo muy bien como ponerlo, yo selecciono uno de los colores y me manda a otra pagina que me dice q se ha insertado en la tabla. Te pongo el codigo para ver si me puedes ayudar. El strDesc00 es el color(son las opciones de antes)
<%
Sub CreateNewOrder()
Application.lock
if Application("orderID") = "" then
Application("orderID") = 1
end if

intOrderID = Application("orderID")
Session("orderID") = intOrderID
Con.Execute("insert INTO orders " & " (orderID, status) values " & " ("&intOrderID&", 'OPEN')")

Application("orderID") = Application("orderID") + 1
Application.Unlock
End Sub

Sub AddToOrder(nOrderID, nProductID, color, ncolor01, ncolor02, ncolor03, ncolor04, ncolor05, ncolor06, ncolor07, ncolor08, ncolor09, ncolor10, ncolor11, ncolor12, nQuant)
sqlText = "INSERT INTO itemsOrdered " _
& " (orderID, productID, color, color01, color02, color03, color04, color05, color06, color07, color08, color09, color10, color11, color12, quantity) values " _
& " ("&nOrderID&", "&nProductID&", "&ncolor&", "&ncolor01&", "&ncolor02&", "&ncolor03&", "&ncolor03&", "&ncolor04&", "&ncolor05&", "&ncolor06&", "&ncolor07&", "&ncolor08&", "&ncolor09&", "&ncolor10&", "&ncolor11&", "&ncolor12&", "&nQuant&")"
Con.Execute(sqlText)

End Sub

'Main program
intProdID = Request.form("intProdID")
intColor= Request.form ("color")
intQuant = Request.form("intQuant")

Dim con,rs,sql,datos,sqlText

datos= Server.MapPath ( "tienda.mdb " )

' Creamos el objeto para la conexion y la abrimos

Set con= Server.CreateObject("ADODB.connection")
con.open "Provider=Microsoft.Jet.OLEDB.4.0;Data source="& datos &";"
intOrderID = cstr(Session("orderID"))
if intOrderID = "" then
CreateNewOrder
end if
sqlText = "SELECT * FROM itemsOrdered WHERE orderID =" & intOrderID & " AND productID =" & intProdID & "AND color=" & intColor
set rsOrder = Con.Execute(sqlText)

if rsOrder.EOF then
txtInfo = "Este artículo se ha agregado a su orden."
AddToOrder intOrderID, intProdID, intQuant
else
txtInfo = "Este artículo ya está en su carta."
end if
%>
A ver si me puedes ayudar, gracias
  #4 (permalink)  
Antiguo 22/08/2005, 13:10
Avatar de mamon  
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 1.302
Antigüedad: 22 años, 5 meses
Puntos: 3
mmm.. pero cunado llamas a la sub-rutina AddToOrder.. no ingresas todos los parámetros...
__________________
Yo si sé lo que es trabajar duro, porque lo he visto.
  #5 (permalink)  
Antiguo 23/08/2005, 01:12
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Cuando le doy AddtoOrder, lo que intento es insertar los campos que he seleccionado, es decir, (color,color1,color2,color3.........color12) eso es la opcion de select que puse al principio. quiero q cuando seleccione un color se inserte en la tabal itenorders pero no se como hacerlo, pq me da el siguiente error.

Tipo de error:
Microsoft JET Database Engine (0x80004005)
La operación debe usar una consulta actualizable.
/tienda/addToCart.asp, línea 19


Tipo de explorador:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)

Página:
POST 86 bytes to /tienda/addToCart.asp

Datos de POST:
color=CREMA&Eleccion=Talla+S+%2838%29&intProdID=8& intQuant=1&submit1=A%F1adir+al+Carro

Hora:
martes, 23 de agosto de 2005, 13:01:37


Más información:
Soporte técnico de Microsoft


la pagina addToCart.asp es el codigo de de AddToOrder, ese es el completo.

Muchas gracias

Última edición por Essftg; 23/08/2005 a las 05:00
  #6 (permalink)  
Antiguo 23/08/2005, 07:35
 
Fecha de Ingreso: septiembre-2004
Mensajes: 76
Antigüedad: 19 años, 9 meses
Puntos: 0
Ahora me da este error:
Microsoft JET Database Engine (0x80040E14)
Error de sintaxis (falta operador) en la expresión de consulta 'orderID =2 AND productID =459AND color=BEIGE AND txttalla00='.

quiero insertar el orderId, productId, el COLOR que es una lista/menu desplegable y la talla tambien. Pero no se en q falla.

<%
Sub CreateNewOrder()
Application.lock
if Application("orderID") = "" then
Application("orderID") = 1
end if

intOrderID = Application("orderID")
Session("orderID") = intOrderID
Con.Execute("insert INTO orders " _
& " (orderID, status) values " _
& " ("&intOrderID&", 'OPEN')")

Application("orderID") = Application("orderID") + 1
Application.Unlock
End Sub

Sub AddToOrder(nOrderID, nProductID, color, ncolor01, ncolor02, ncolor03, ncolor04, ncolor05, ncolor06, ncolor07, ncolor08, ncolor09, ncolor10, ncolor11, ncolor12, txttalla00, nQuant)
sqlText = "INSERT INTO itemsOrdered " & " (orderID, productID, color, color01, color02, color03, color04, color05, color06, color07, color08, color09, color10, color11, color12, txttalla00, quantity) values " & " ("&nOrderID&", "&nProductID&", "&ncolor&", "&ncolor01&", "&ncolor02&", "&ncolor03&", "&ncolor03&", "&ncolor04&", "&ncolor05&", "&ncolor06&", "&ncolor07&", "&ncolor08&", "&ncolor09&", "&ncolor10&", "&ncolor11&", "&ncolor12&", "&ntxttalla00&", "&nQuant&")"
Con.Execute(sqlText)
End Sub

'Main program
intProdID = Request.form("intProdID")
intColor= Request.form ("color")
inttalla= Request.form ("txttalla00")
intQuant = Request.form("intQuant")

Dim con,rs,sql,datos,sqlText

datos= Server.MapPath ( "tienda.mdb " )

' Creamos el objeto para la conexion y la abrimos

Set con= Server.CreateObject("ADODB.connection")
con.open "Provider=Microsoft.Jet.OLEDB.4.0;Data source="& datos &";"


intOrderID = cstr(Session("orderID"))
if intOrderID = "" then
CreateNewOrder
end if


sqlText = "SELECT * FROM itemsOrdered WHERE orderID =" & intOrderID & " AND productID =" & intProdID & "AND color=" & intColor & " AND txttalla00=" & inttalla
set rsOrder = con.Execute(sqlText)

if rsOrder.EOF then
txtInfo = "Este artículo se ha agregado a su orden."
AddToOrder intOrderID, intProdID, intColor, inttalla, intQuant
else
txtInfo = "Este artículo ya está en su carta."
end if


%>
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 21:23.