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

Error 500

Estas en el tema de Error 500 en el foro de ASP Clásico en Foros del Web. Hola, tengo este código: <!--#include file="dia1.asp"--> <% StrCon = "Driver={Microsoft Access Driver (*.mdb)};" & "DBQ=" & Server.Mappath("../../Database/base.mdb") Set conexion = Server.CreateObject("ADODB.Connection") conexion.open StrCon sqlText = ...
  #1 (permalink)  
Antiguo 17/04/2004, 12:53
Avatar de cmartin81  
Fecha de Ingreso: enero-2004
Ubicación: Mexico D.F.
Mensajes: 93
Antigüedad: 21 años, 3 meses
Puntos: 0
Error 500

Hola, tengo este código:


<!--#include file="dia1.asp"-->
<%
StrCon = "Driver={Microsoft Access Driver (*.mdb)};" & "DBQ=" & Server.Mappath("../../Database/base.mdb")
Set conexion = Server.CreateObject("ADODB.Connection")
conexion.open StrCon
sqlText = "select * from correos where Id = 1"
Set RS = conexion.Execute(sqlText)

no_correo=RS("No_correo")
dia = 1

if dia = 1 then
RS.close
Set RS = Nothing
SQL = "Update correos set No_correo = 2"
Set Up = conexion.Execute(SQL)
%>
<!--#include file="dia1_1.asp"-->
<%
end if

if dia = 5 then
RS.close
Set RS = Nothing
SQL1 = "Update correos set No_correo = 3"
Set Up = conexion.Execute(SQL1)
%>
<!--#include file="dia1_2.asp"-->
<%
end if

if dia = 10 then
RS.close
Set RS = Nothing
SQL2 = "Update correos set No_correo = 1"
Set Up = conexion.Execute(SQL2)
%>
<!--#include file="dia1_3.asp"-->
<%
end if
conexion.Close
Set conexion = Nothing
%>

<html>
<head>
<title>Prueba</title>
</head>
<body>
Texto
</body>
</html>

Al ejecutarlo en el servidor me manda el Error 500 Internal Server Error, no se que sea lo que estoy haciendo mal, lo que hacen los archivos dia1_1.asp, dia1_2.asp y dia1_3.asp es que se mande un e-mail a los usuarios que estan en una base de datos y lo que hace el archivo dia1.asp es que incrementa en uno el valor de otra tabla en la BD
El código de dia1.asp es:

<%

dia = 1

' Si el dia es anterior a 10
if dia < 10 then
StrCon = "Driver={Microsoft Access Driver (*.mdb)};" & "DBQ=" & Server.Mappath("../../Database/base.mdb")
Set conexion = Server.CreateObject("ADODB.Connection")
conexion.open StrCon
' Inicia cambio de status
set rs=createobject("ADODB.Recordset")
rs.CursorType=1
rs.LockType=2
'Ejecuta el query
SQL = "SELECT * FROM usuarios WHERE tipo_user = 3 AND veces = 0 AND status='Activo'"
rs.Open SQL, conexion
Do while not rs.eof
rs("status") = "Pendiente"
rs("veces") = 1
rs.update
rs.MoveNext
Loop
' Fin de cambio de status

rs.Close
Set rs = Nothing
conexion.Close
Set conexion = Nothing
End if

' Si el dia es entre 10 y 17
if ((dia >= 10) AND (dia <= 17)) then
StrCon = "Driver={Microsoft Access Driver (*.mdb)};" & "DBQ=" & Server.Mappath("../../Database/base.mdb")
Set conexion = Server.CreateObject("ADODB.Connection")
conexion.open StrCon

set rs=createobject("ADODB.Recordset")
rs.CursorType=1
rs.LockType=2
'Ejecuta el query
SQL = "SELECT * FROM usuarios WHERE tipo_user = 3 AND status='Pendiente' AND veces=1"
rs.Open SQL, conexion
Do while not rs.eof
rs("status") = "Bloqueado"
rs("veces") = 2
rs.update
rs.MoveNext
Loop
' Cerramos el RecordSet

rs.Close
Set rs = Nothing
conexion.Close
Set conexion = Nothing
End if

' si el dia es mayor a 24
if dia > 24 then
StrCon = "Driver={Microsoft Access Driver (*.mdb)};" & "DBQ=" & Server.Mappath("../../Database/hometravel1.mdb")
Set conexion = Server.CreateObject("ADODB.Connection")
conexion.open StrCon

set rs=createobject("ADODB.Recordset")
rs.CursorType=1
rs.LockType=2
'Ejecuta el query
SQL = "SELECT * FROM usuarios where tipo_user = 3 and veces >= 2"
rs.Open SQL, conexion
Do while not rs.eof
rs("veces") = 0
rs.update
rs.MoveNext
Loop
' Cerramos el RecordSet

rs.Close
Set rs = Nothing
conexion.Close
Set conexion = Nothing
End if

%>


y el de los demas archivos es


<%
StrCon = "Driver={Microsoft Access Driver (*.mdb)};" & "DBQ=" & Server.Mappath("../../Database/hometravel1.mdb")
Set conexion = Server.CreateObject("ADODB.Connection")
conexion.open StrCon
sqlText = "select * from usuarios where tipo_user = 3 and status = 'Pendiente' order by nombre"
Set RS1 = conexion.Execute(sqlText)

Do While Not RS1.EOF
nombre = lcase(RS1("nombre"))
email = nombre&"@dominio.com.mx"
strBody=strBody & "ESTADO DE CUENTA" & chr(13)
strBody=strBody & "_____________________________________________ __" & chr(13)
strBody=strBody & "Mensaje." & chr(13)
strBody=strBody & "Envíenos los datos de su pago a [email protected] o registrelos en la página web." & chr(13)
strBody=strBody & chr(13)
strBody=strBody & "Titulo" & chr(13)
strBody=strBody & "Empresa" & chr(13)

Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
Mailer.FromName = "Titulo"
Mailer.FromAddress= "[email protected]"
Mailer.RemoteHost = "mail.dominio.com.mx"
Mailer.AddRecipient "Home Agent", "mail.dominio.com.mx"
Mailer.AddCC "Agente", email
Mailer.Subject = "Saldo vencido"
Mailer.BodyText = strBody
if Mailer.SendMail then
Response.Write "Mail enviado...<br>"
else
Response.Write "Mail send failure. Error was " & Mailer.Response & "<br>"
end if
strBody = ""
set Mailer=nothing
RS1.MoveNext
Loop

RS1.Close
Set RS1 = Nothing
conexion.Close
Set conexion = Nothing
%>

Obviamente cambiando el mensaje en cada archivo.

Por favo, no encuentro que pueda ser.
__________________
_______________________________
Carlos Martin J.
  #2 (permalink)  
Antiguo 17/04/2004, 15:28
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 22 años, 5 meses
Puntos: 0
PUes mira, demasiado código hay ahí como para qu alguien pueda estar leyendoselo todo, por que igual no lo encuentra ni en años.

Solo te digo que:
1º) Prueba ese código en el IIS/PWS de tu PC. Si tienes PWS, te saldrá la linea de error, si tienes IIS, hay un tema de hace opco en el foro en que te dicen como hacer que te muestre donde se produce el error

Si lo ejecutas directamente en el server (en aruba.it solo te dice Error 500 y no te detalla nada), pues no verás nada. Por eso, prueba 1º en tu PC, que puedes trastear lsa configuraciones del server y así ver donde te equivocas.

Saludos!
__________________
Tu portal de manga y anime.
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 10:42.