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

Eliminar con checkbox

Estas en el tema de Eliminar con checkbox en el foro de ASP Clásico en Foros del Web. Saludos.... perdon por molestarlos, la verdad ya estuve buscando ejemplos e informacion en el foro, ya lei el tema que habla de lo que necesito ...
  #1 (permalink)  
Antiguo 12/01/2006, 10:17
 
Fecha de Ingreso: noviembre-2003
Mensajes: 209
Antigüedad: 21 años, 5 meses
Puntos: 0
Eliminar con checkbox

Saludos.... perdon por molestarlos, la verdad ya estuve buscando ejemplos e informacion en el foro, ya lei el tema que habla de lo que necesito en los FAQ's pero no me sale y por eso recurro a su valiosa ayuda.....

Quiero eliminar registros de una BD's a el estilo hotmail, hice una pagina (eliminar.asp) que genera un checkbox por registro, para ello utilice el sig. codigo:

Código:
<input name="CB" type="checkbox" class="check" value="<%=recordset1("NumPlano")%>"/>
NumPlano es mi key en la BD's

cuando selecciono los checkbox de los registros que deseo borrar y le doy click a el boton de borrar, los datos pasan asi a otra pantalla (eliminando.asp) por ejemplo:

Código HTML:
http://localhost/ctrlherramentales/eliminando.asp?CB=1&CB=3&CB=6&Submit=Borrar
Pero ahora no se como va el codigo para que eliminando.asp reciba los datos y elimine los registros que se escogieron....

Este es el codigo que puse en eliminando.asp:

Código:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/ConnCtrlHerramentales.asp" -->
<%
Dim Recordset1
Dim Recordset1_numRows

Set Recordset1 = Server.CreateObject("ADODB.Recordset")
Recordset1.ActiveConnection = MM_ConnCtrlHerramentales_STRING
Recordset1.Source = "SELECT * FROM dbo.CtrlHerrametales"
Recordset1.CursorType = 0
Recordset1.CursorLocation = 2
Recordset1.LockType = 1
Recordset1.Open()

Recordset1_numRows = 0
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<form id="form1" name="form1" method="post" action="">

  <p>
  <%
Variable=Request.QueryString("CB")
sql = "DELETE * FROM dbo.CtrlHerrametales WHERE NumPlano IN(" & Variable & ");"
Recordset1.Execute(sql)
%>
  
  </p>
</form>
</body>
</html>
<%
Recordset1.Close()
Set Recordset1 = Nothing
%>
pero me marca este error:

Microsoft VBScript runtime (0x800A01B6)
Object doesn't support this property or method: 'Execute'

para crear la conexion y el juego de registros utilizo las opciones de Dreamweaver que es donde creo las paginas....

Gracias pero muchas gracias por su ayuda....

Saludos desde Queretaro, Mexico
  #2 (permalink)  
Antiguo 12/01/2006, 10:21
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Si recibes http://localhost/ctrlherramentales/e...&Submit=Borrar

Simplemente haz:

sql= "delete from tabla where id in " & Request("CB")
ObjCommand.Execute(sql)


Saludos
  #3 (permalink)  
Antiguo 12/01/2006, 11:16
 
Fecha de Ingreso: noviembre-2003
Mensajes: 209
Antigüedad: 21 años, 5 meses
Puntos: 0
De acuerdo Soy un neofito....

Gracias Myakire....por tu ayuda....

puse el codigo pero ahora me marca:

Microsoft VBScript runtime (0x800A01A8)
Object required: ''

y una duda mas ..... el codigo que me pusiste en la respuesta debe de ir dentro de un formulario o simplemente dentro del body?

Lo puse de las dos maneras pero como me marca el error de las comillas pues no he podido avanzar.

Gracias de nuevo
  #4 (permalink)  
Antiguo 12/01/2006, 11:18
 
Fecha de Ingreso: noviembre-2003
Mensajes: 209
Antigüedad: 21 años, 5 meses
Puntos: 0
Perdon.... el ObjCommand hace referencia a la conexion que esta activa en ese momento?
  #5 (permalink)  
Antiguo 12/01/2006, 11:55
Avatar de tomchat  
Fecha de Ingreso: septiembre-2005
Mensajes: 231
Antigüedad: 19 años, 7 meses
Puntos: 0
ps rebisa bien el codigo o en todo caso colocalo asi

CB=Request("CB")
sql= "delete from tabla where id = '" & CB & "'"
  #6 (permalink)  
Antiguo 12/01/2006, 11:56
 
Fecha de Ingreso: noviembre-2004
Mensajes: 371
Antigüedad: 20 años, 5 meses
Puntos: 0
te recomiendo que redirijas el formulario a la pagina donde esta el delete (codigo de arriba) y el formulario lo mandas con un variable 1 por ejemplo y solo haces un if, if miVarEs = "1" then ... delete....end if y redireccionas a la pagina k kieras

si te da ese error es por que no te esta llegando una variable, implime la query para saber los resultados, lo haces con response.write(query) antes de ejecutar la conexion
  #7 (permalink)  
Antiguo 12/01/2006, 16:56
 
Fecha de Ingreso: noviembre-2003
Mensajes: 209
Antigüedad: 21 años, 5 meses
Puntos: 0
Poco a poquito se resuelve el asuntito....

Gracias de nuevo a todos los que me ayudan....

Mi pagina eliminado.asp recibe estos datos por medio de la URL

Código HTML:
http://localhost/ctrlherramentales/eliminando.asp?CB=1&CB=3&Submit=Borrar
despues de seleccionar los checkbox de los registros que deseo eliminar y darle click en borrar.
Por medio de response.write veo que es lo que reciben las variables y la sentencia SQL.

CB=Request("CB")
response.write(cb)

el valor de la variable CB es igual a: 1, 3


sql= "DELETE FROM dbo.CtrlHerrametales WHERE NumPlano IN " & Request("CB")
response.write(sql)

el valor de la variable sql es igual a esto: DELETE FROM dbo.CtrlHerrametales WHERE NumPlano IN 1, 3

Creo y pienso que esta bien hasta ahi, pero cuando pongo el codigo:

ObjCommand.Execute(sql)

Que es para ejecutar la sentencia SQL

Me marca este error:

Microsoft VBScript runtime (0x800A01A8)
Object required: ''

Ya le estuve buscando por todos lados y no le doy....

Les dejo el codigo completo de la pagina que borra los registros de las BD's, en serio mil, pero mil garcias:

Código:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/ConnCtrlHerramentales.asp" -->
<%
Dim Recordset1
Dim Recordset1_numRows

Set Recordset1 = Server.CreateObject("ADODB.Recordset")
Recordset1.ActiveConnection = MM_ConnCtrlHerramentales_STRING
Recordset1.Source = "SELECT * FROM dbo.CtrlHerrametales"
Recordset1.CursorType = 0
Recordset1.CursorLocation = 2
Recordset1.LockType = 1
Recordset1.Open()

Recordset1_numRows = 0
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<%
CB=Request("CB")
response.write(cb)
sql= "DELETE FROM dbo.CtrlHerrametales WHERE NumPlano IN " & Request("CB")
response.write(sql)
ObjCommand.Execute(sql)


%>
</body>
</html>
<%
Recordset1.Close()
Set Recordset1 = Nothing
%>
  #8 (permalink)  
Antiguo 12/01/2006, 19:05
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Mira, el asunto esta realmente fácil, no te desesperes. Solo pon este código en la página que borra:

Código:
<%
set oConn =  Server.CreateObject("ADODB.Connection")
oConn.Open MM_ConnCtrlHerramentales_STRING 'debes asegurarte que es una cadena de conexión válida

set objCommand=Server.CreateObject("ADODB.command")
objCommand.ActiveConnection=oConn
sql= "DELETE FROM dbo.CtrlHerrametales WHERE NumPlano IN " & Request("CB")
objCommand.Execute sql

oConn.close()

set objCommand = nothing
set oConn = nothing
%>
y listo. La asignación al RecordSet no es indispensable.

Saludos
  #9 (permalink)  
Antiguo 13/01/2006, 10:36
 
Fecha de Ingreso: noviembre-2003
Mensajes: 209
Antigüedad: 21 años, 5 meses
Puntos: 0
Señores..... Myakire, Tomchat, Bitshoot.....

Les agradesco mucho su ayuda, ya funciono..... definitivamente el que sabe, sabe!!!

Gracias, si los conociera en persona les invitaria una cervezas.
  #10 (permalink)  
Antiguo 25/04/2007, 11:15
 
Fecha de Ingreso: abril-2007
Mensajes: 1
Antigüedad: 18 años
Puntos: 0
Pregunta Re: Eliminar con checkbox

hola que tal
mi problema es similar ayuda por favror
tengo una tabla que trae datos de un recorset ...es una tabla por reg o agente ... con sus datos ... es estilo excel ... y al final en otra tabla igual suma todo los valores de todos los agentes ... lo que yo intento hacer es que con mi check box ... al seleccionar cierto registro ... ese no lo sume al final ... en la tabla donde presenta el resumen de todos los agentes... y lo sombre los registros seleccionados sin sumarlos como le hago ayuda por favor ...
  #11 (permalink)  
Antiguo 26/04/2007, 07:54
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Re: Eliminar con checkbox

No te sirvió la respuesta/solución dada a el mensaje original?
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 06:27.