Autor Tema: Ayuda ASP  (Leído 3542 veces)

Desconectado Mithrandir

  • Avanzado
  • ****
  • Mensajes: 1666
Ayuda ASP
« en: Marzo 20, 2012, 20:11:25 pm »
Estimados tengo una pequeña duda con ASP, tengo que hacer un mantenedor ya el alta esta lista, pero en baja y cambio me arroja este error

Script error detected at line 28.
Source line: comando.execute()   
Description: Error de sintaxis (falta operador) en la expresión de consulta '('',)'.

el cual la linea 28, esta bien escrita y le doy el fin a la sentencia. no se que puede suceder o donde esta mi error, algun alma caritativa y bondadosa que nos ayude

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!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=utf-8" />
<title>pagina emisora</title>
</head>

<body>
</body>
       <script language="vbscript" runat="server">
           response.write "<form name='frmuno' action='lec16b.asp' method='post'>" &_
         "CODIGO:<input type='text' name='txtcodigo'><br />" &_
           "NOMBRE:<input type='text' name='txtcodigo'><br />"

           ycodigo=request.form("txtcodigo")       
           ynombre=request.form("txtnombre")
                 
           cadenaconeccion="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\webs\lec14\sysinventario.mdb;User ID=Admin;Password="
           set conecta=Server.CreateObject("ADODB.connection")
           conecta.connectionstring=cadenaconeccion
          conecta.open()

          sql="delete from producto where ('"& ycodigo & "'," & ynombre & ")"
          set comando=Server.CreateObject("ADODB.command")
          comando.activeconnection=conecta
           comando.commandtext=sql
           comando.execute()      
         
         response.write "<form name='frmuno' >" &_
           "NOMBRE:<input type='text' name='txtnombre' value='" & ynombre & "'><br />" &_
           "PRECIO:<input type='text' name='txtprecio' value='" & yprecio & "'><br />"         
       </script>


</html>
mmmmmmmmmmm, a seguir como mono porfiado

Desconectado Gladiador

  • Junior
  • ***
  • Mensajes: 507
Re:Ayuda ASP
« Respuesta #1 en: Marzo 20, 2012, 20:27:59 pm »
sql="delete from producto where ('"& ycodigo & "'," & ynombre & ")"

el ynombre no deberia ir entre ' ' simple tambien??

sql="delete from producto where ('"& ycodigo & "','" & ynombre & "')"

Desconectado Tandersan

  • Experto
  • *****
  • Mensajes: 10029
Re:Ayuda ASP
« Respuesta #2 en: Marzo 20, 2012, 20:28:09 pm »
sql="delete from producto where ('"& ycodigo & "'," & ynombre & ")"

¿ynombre es texto? Porque te faltan las comillas simples como en ycodigo.
Así como está, ycodigo es texto e ynombre es número. ¿Debería ser al revés?
Structure. Logic. Function. Control.
A structure cannot stand without a foundation.
Logic is the foundation of function.
Function is the essence of control.
I am in control.

Desconectado Tandersan

  • Experto
  • *****
  • Mensajes: 10029
Re:Ayuda ASP
« Respuesta #3 en: Marzo 20, 2012, 20:28:36 pm »
Se me adelantaron  :risa2:

FUUUUUUUUUUUUUUUUUUUUUUUUUUU :risa2:
Structure. Logic. Function. Control.
A structure cannot stand without a foundation.
Logic is the foundation of function.
Function is the essence of control.
I am in control.

Desconectado Gladiador

  • Junior
  • ***
  • Mensajes: 507
Re:Ayuda ASP
« Respuesta #4 en: Marzo 20, 2012, 20:29:14 pm »
ahh yte falta el operador

Desconectado Gladiador

  • Junior
  • ***
  • Mensajes: 507
Re:Ayuda ASP
« Respuesta #5 en: Marzo 20, 2012, 20:30:30 pm »
sql="delete from producto where ('"& ycodigo & "'," & ynombre & ")"

where ycodigo  = a que ?? ynombre = que ??  esta mal hecha la consulta

sql="delete from producto where (campo_tabla_codigo='"& ycodigo & "' AND campo_tabla_nombre = '" & ynombre & "')"

como lo tienes hecho el codigo no tiene idea que es lo que estas condicionando con la clausula WHERE
« Última modificación: Marzo 20, 2012, 20:36:38 pm por Gladiador »

Desconectado Tandersan

  • Experto
  • *****
  • Mensajes: 10029
Re:Ayuda ASP
« Respuesta #6 en: Marzo 20, 2012, 20:32:09 pm »
De hecho son jodidas a veces las consultas SQL cuando tienen tantas variables.
Yo como debug, colocada un response.write sql y luego un response.end para ver qué le enviaba "realmente" al execute de comando de ADODB.
Structure. Logic. Function. Control.
A structure cannot stand without a foundation.
Logic is the foundation of function.
Function is the essence of control.
I am in control.

Desconectado Mithrandir

  • Avanzado
  • ****
  • Mensajes: 1666
Re:Ayuda ASP
« Respuesta #7 en: Marzo 20, 2012, 22:20:34 pm »
Ya lo solucione, muchas gracias, mañana solo termino las validaciones y arreglar las css, para entregarlo
mmmmmmmmmmm, a seguir como mono porfiado

Desconectado Comufacho

  • Experto
  • *****
  • Mensajes: 11221
Re:Ayuda ASP
« Respuesta #8 en: Marzo 20, 2012, 23:18:30 pm »
Y cual era la solucion?

Queremos saber!!!

Desconectado Tandersan

  • Experto
  • *****
  • Mensajes: 10029
Re:Ayuda ASP
« Respuesta #9 en: Marzo 21, 2012, 08:41:29 am »
Y cual era la solucion?

Queremos saber!!!

<negroVeloz>Hacerlo con PHP en Linux pa Galaxy poh, el resto vale callampa!</negroVeloz>  :risa2:
Structure. Logic. Function. Control.
A structure cannot stand without a foundation.
Logic is the foundation of function.
Function is the essence of control.
I am in control.

Desconectado Gladiador

  • Junior
  • ***
  • Mensajes: 507
Re:Ayuda ASP
« Respuesta #10 en: Marzo 21, 2012, 11:19:07 am »
Y cual era la solucion?

Queremos saber!!!

es un misterio  ::)

Desconectado Mithrandir

  • Avanzado
  • ****
  • Mensajes: 1666
Re:Ayuda ASP
« Respuesta #11 en: Marzo 21, 2012, 11:35:47 am »
aca esta la solucion, en español separe el codigo, que al realizar el click en un boton de donde selecciones el codigo a borrar te aparece un textbox donde ingresas el codigo y se borra en otra pagina


<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!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=utf-8" />
<title>pagina emisora</title>
</head>
<body>

     <script language="vbscript" runat="server">
                           ycodigo=request.form("txtcodigo")
                           cadenaconeccion="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\webs\lec14\sysinventario.mdb;User ID=Admin;Password="
                           set conecta=Server.CreateObject("ADODB.connection")
                           conecta.connectionstring=cadenaconeccion
                          conecta.open()
                           if ycodigo="" then
                           response.write "ERROR, INGRESE EL CODIGO DEL PRODUCTO A SER ELIMINADO" &_
                           "<br /><a href='a.html'>VOLVER AL MENU</a>"
                           else
                          sql="delete from producto where codigo_pro=" & ycodigo & ""
                          set comando=Server.CreateObject("ADODB.command")
                          comando.activeconnection=conecta
                           comando.commandtext=sql
                           comando.execute()
                           response.write "EL PRODUCTO FUE ELIMINADO DE LA BASE DE DATOS" &_
                           "<br /><a href='a.html'>VOLVER AL MENU</a>"

                           end if
     </script>
   </body>
</html>
mmmmmmmmmmm, a seguir como mono porfiado

Desconectado Gladiador

  • Junior
  • ***
  • Mensajes: 507
Re:Ayuda ASP
« Respuesta #12 en: Marzo 21, 2012, 11:40:20 am »
bien pero veo que ahi si le pusiste el operador y/o condicion  sql="delete from producto where codigo_pro=" & ycodigo & ""   completaste el WHERE   :-\

Desconectado Mithrandir

  • Avanzado
  • ****
  • Mensajes: 1666
Re:Ayuda ASP
« Respuesta #13 en: Marzo 21, 2012, 11:55:45 am »
bien pero veo que ahi si le pusiste el operador y/o condicion  sql="delete from producto where codigo_pro=" & ycodigo & ""   completaste el WHERE   :-\

correcto en el anterior queria hacerlo o por codigo o por nombre por eso no me funko
mmmmmmmmmmm, a seguir como mono porfiado

Desconectado Gladiador

  • Junior
  • ***
  • Mensajes: 507
Re:Ayuda ASP
« Respuesta #14 en: Marzo 21, 2012, 12:04:58 pm »
correcto en el anterior queria hacerlo o por codigo o por nombre por eso no me funko

ahh  .. clarin por que la "," intermedia no tenia sentido ,  por nombre no sirve la eliminacion ya que no necesariamente los nombres son unicos .

Desconectado negroVeloz

  • Experto
  • *****
  • Mensajes: 2900
  • CSM, Biónico, Alemán, Entendido y Facho de cuneta
Re: Ayuda ASP
« Respuesta #15 en: Marzo 21, 2012, 12:47:20 pm »
Está listo para hacerle un sql inyection. Ojo con eso.
Si el código del producto es un número, transformalo a int y después vuelves a parsearlo. Aunque el mejor método es con parámetros.

Enviado desde mi Galaxy Ace usando Tapatalk.

Desconectado Mithrandir

  • Avanzado
  • ****
  • Mensajes: 1666
Re: Ayuda ASP
« Respuesta #16 en: Marzo 21, 2012, 12:49:49 pm »
Está listo para hacerle un sql inyection. Ojo con eso.
Si el código del producto es un número, transformalo a int y después vuelves a parsearlo. Aunque el mejor método es con parámetros.

Enviado desde mi Galaxy Ace usando Tapatalk.

de echo el codigo son numeros ya esta declarado en la base de datos, ahora estoy viendo como hacer las validaciones de que si es numero pasa, en el codigo van letras me arrojen un mensaje que digan que tienen que ser numeros
mmmmmmmmmmm, a seguir como mono porfiado

Tags:
     


    A la memoria de Alex Feliú a.k.a Rommel