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

error (0x80020009)

Estas en el tema de error (0x80020009) en el foro de ASP Clásico en Foros del Web. tengo un gestor de contenidos desde el cual gestiono una bd q utilizo para mostrar sus datos a traves de una Web. Dentro de esa ...
  #1 (permalink)  
Antiguo 04/11/2004, 05:05
Avatar de DkarnDuuk  
Fecha de Ingreso: marzo-2004
Mensajes: 626
Antigüedad: 21 años, 1 mes
Puntos: 2
error (0x80020009)

tengo un gestor de contenidos desde el cual gestiono una bd q utilizo para mostrar sus datos a traves de una Web. Dentro de esa web (general) hay varias webs con sus apartados y todos funcionan de igual forma.
Cada web tiene una hoja index.asp que funciona igual (la diferencia en cada index.asp es el nombre de la tabla que utiliza para mostrar los datos). Un ejemplo de index.asp seria este:

APARTADO1 <-Nombre de la web y de la tabla

apartado2
apartado3
apartado3

apartado2

apartado2
apartado3


el gestor es unico para todas por lo que solo hay uno. El problema viene cuando intento guardar un nuevo registro en la tabla que es cuando me sale el error.
Pero hay webs que no me dan ningun problema cuando intento crear un nuevo registro y hay webs que en algun apartado no me dan problemas y en otros si.

el caso es que todos los apartado2 o apartado3 tienen algo y no entiendo pq me sale ese error de que no existe el registro en la bd. He repasado la bd y creo tenerla bien. En la tabla todos los datos son de tipo texto.
He comprobado que las variables que utilizo para guardar los datos tienen algo, asi q no estan vacios.

Este es el codigo de la pagina que me da error, guardar.asp:

<%if session("autentificado")="si" then%>
<html>
<body>
<%
'****************comprobacion*****************
response.write("Tabla: "&session("tabla")&"<br>")
response.write("Nivel1: "&session("niv1")&"<br>")
response.write("Nivel2: "&session("niv2")&"<br>")
'***************fin comprobacion***************

Set Conn=Server.CreateObject("ADODB.Connection")
Conn.open "webtema"

sql="select título from "&session("tabla")&" where título='"&request.form("titulo")&"'"
set rs=Conn.execute (sql)

if not rs.eof then
response.write("<center><b><font color='red'>El registro que intentas guardar ya existe!!!</font></b></center><br><br>")
response.write("<center><a href='sacar.asp?ide3="&session("tabla")&"&ide="&se ssion("niv1")&"&ide2="&session("niv2")&"'>Volver</a></center>")
else
sql2="select apartado4 from arbol where apartado1='"&session("tabla")&"' and apartado2='"&session("niv1")&"' and apartado3='"&session("niv2")&"'"
'set rs2=Conn.execute (sql2)
set rs2=server.createobject("adodb.recordset")
rs2.open sql2,Conn, &H0001,3

session("cadenaimg")=rs2("apartado4") <-AQUI DA EL PROBLEMA->

tamano=len(rs2("apartado4"))-3
cadena=right(rs2("apartado4"),tamano)
session("ruta")=lcase(replace(cadena,"/","\"))

sql="insert into "&session("tabla")&" (nivel1,nivel2,título,explicación,link) values('"&session("niv1")&"','"&session("niv2")&"' ,'"&request.form("titulo")&"','"&request.form("exp lica")&"','"&request.form("link")&"')"
set rs=Conn.execute (sql)

id_sql="select top 1 id from "&session("tabla")&" order by id desc"
set rs=Conn.execute (id_sql)

session("id")=rs("id")

response.redirect "subir.asp"

end if

Conn.close

%>
</body>

</html>
<%else
session("autentificado") = "no"
response.redirect "index.asp?errorusuario=si"
end if

%>

os agradeceria mucho vuestra ayuda, gracias!!
__________________
bla, bla, bla......
  #2 (permalink)  
Antiguo 04/11/2004, 06:37
Avatar de cacike500  
Fecha de Ingreso: noviembre-2002
Mensajes: 56
Antigüedad: 22 años, 5 meses
Puntos: 0
Localización del error

Tu error está en una de las cláusulas "where" de alguna de las dos "select" que tienes.

Mira que esté todo correcto y que ninguno de los valores que usas de comparación estén vacíos.

No puedo decirte mucho más sin conocer la estructura de campos de tus tablas.
__________________
como dice un sabio amigo mio:
web puede...
master algo menos...
[AIG...2001]
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:26.