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

ASP - MySQL

Estas en el tema de ASP - MySQL en el foro de ASP Clásico en Foros del Web. Buenas, tengo una consulta sobre como utilizar el codigo de asp en bases de datos MySQL. El problema que tengo es que no me toma ...
  #1 (permalink)  
Antiguo 28/10/2006, 11:39
 
Fecha de Ingreso: agosto-2006
Ubicación: Argentina, Bahia Blanca
Mensajes: 172
Antigüedad: 17 años, 10 meses
Puntos: 0
Pregunta ASP - MySQL

Buenas, tengo una consulta sobre como utilizar el codigo de asp en bases de datos MySQL. El problema que tengo es que no me toma el siguiente codigo, tira error.
Este codigo lo utilizo para contar los click de los usuarios. Lo que me ocurre es que si tiene que actualizar y es un solo campo lo hace si y es mas de uno con eset sistema no lo hace y da error multiple...
Mi temor es tener que pasar la mayoria del codigo a php porque no me tome el codigo original ASP.

Alguna idea ¿?
Muchas gracias

CODIGO EN ASP que da error.
Código:
<%dia= day(now)%>
<%mes= month(now)%>
<%ano= year(now)%>
<%fecha = (dia)& "/" &(mes)& "/" &(ano) %>
<%

Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open basestats

strsql = "SELECT * FROM pages WHERE page = " & Codigo & " and tipo= '" & tipo & "' and fecha= '" & fecha & "'" 

Set rsp = Server.CreateObject("ADODB.RecordSet")
RSp.open strsql, oConn, 3, 3
Server.ScriptTimeOut = 180

if rsp.eof then
'aca reemplasaria el insert to
    rsp.AddNew
    rsp("clicks")= 1
    rsp("page") = Codigo
	rsp("fecha") = Cstr(fecha)  
	rsp("tipo") = tipo
    rsp.update
else

'y aca el update pages set la la

    rsp("clicks")=rsp("clicks")+1
	
    rsp.update
end if 

rsp.Close
set rsp=nothing
oConn.Close

%>
Codigo en ASP con toques PHP que anda.
Código:
<%Fechita= Cstr(dia) & "/" & Cstr(mes) & "/" & Cstr(ano) %>
<%Set oConn = Server.CreateObject("ADODB.Connection")
Set RS = Server.CreateObject("ADODB.RecordSet")
oConn.Open basestats
rs.CursorType=1
rs.LockType=2
SQL="SELECT * FROM pages WHERE page = " & Codigo & " and tipo= '" & tipo & "' and fecha ='"&fech&"' " 
'"SELECT * FROM pages WHERE page = " & Codigo & " and tipo= '" & tipo & "' and fecha= '" & fechita & "' " 
rs.Open SQL, oConn
if rs.eof then
cli=1
strSQL = "INSERT INTO pages (fecha , clicks  , page , tipo ) values ( '"& fech & "' , " & cli & " , "& codigo& " , '"& tipo& "')"
   oConn.Execute(strSQL) 
else
clis=rs("clicks")+1


strSQLn = "update pages SET clicks = " & clis & " WHERE page = " & Codigo & " and tipo= '" & tipo & "' and fecha ='"&fech&"' "

   oConn.Execute(strSQLn) 
end if 
rs.Close
oConn.close
set rs=nothing
set oConn=nothing%>

Última edición por Spychaser; 28/10/2006 a las 20:54
  #2 (permalink)  
Antiguo 28/10/2006, 12:03
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Y cual es el error?
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 28/10/2006, 20:18
 
Fecha de Ingreso: agosto-2006
Ubicación: Argentina, Bahia Blanca
Mensajes: 172
Antigüedad: 17 años, 10 meses
Puntos: 0
Pregunta error

u_goldman.
Gracias por responder, aca posteo el error y en donde se ubica.
Aclaro que no es porque uso formato fecha sino que da error aun poniendo cero o texto.

Muchas gracias.

Microsoft OLE DB Provider for ODBC Drivers error '80040e21'

Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.
stats.asp, line 30

y la linea 30 es
rsp("fecha") = fecha <========== linea 30

Aca va el codigo de nuevo

Código:
<%dia= day(now)%>
<%mes= month(now)%>
<%ano= year(now)%>
<%fecha = (dia)& "/" &(mes)& "/" &(ano) %>
<%

 


Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open basestats

strsql = "SELECT * FROM pages WHERE page = " & Codigo & " and tipo= '" & tipo & "' and fecha= '" & fecha & "'"

Set rsp = Server.CreateObject("ADODB.RecordSet")
RSp.open strsql, oConn, 3, 3
Server.ScriptTimeOut = 180

if rsp.eof then
'aca reemplasaria el insert to
    rsp.AddNew
    rsp("clicks")= 1
    rsp("page") = Codigo
 rsp("fecha") = fecha                   <========== linea 30
 rsp("tipo") = tipo
    rsp.update
else

'y aca el update pages set la la

    rsp("clicks")=rsp("clicks")+1
 
    rsp.update
end if

rsp.Close
set rsp=nothing
oConn.Close

%>

Última edición por Spychaser; 28/10/2006 a las 20:56
  #4 (permalink)  
Antiguo 28/10/2006, 21:02
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Bueno, en principio en lugar de utilizar el metodo addnew, yo te recomendaria correr otra sentencia SQL.
Código:
if rs.EOF
  strSQL = "INSERT INTO bla bla bla"
  ObjConn.Execute(strSQL)
end if
Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #5 (permalink)  
Antiguo 28/10/2006, 21:08
 
Fecha de Ingreso: agosto-2006
Ubicación: Argentina, Bahia Blanca
Mensajes: 172
Antigüedad: 17 años, 10 meses
Puntos: 0
Pregunta joya!

u_goldman
Muchas gracias por la pronta respuesta, pero mi intencion es mantener el codigo o si existe alguna forma de salvarlo sin meterle mano a todo.
Muchas gracias.
  #6 (permalink)  
Antiguo 28/10/2006, 21:51
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Pues no se, podria ser un tipo de dato incorrecto, asegurate de estar pasando un tipo de dato fecha. Y la recomendacion es porque realmente ese procedimiento es un poco deficiente, pero bueno cada quien .

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #7 (permalink)  
Antiguo 16/11/2006, 15:09
 
Fecha de Ingreso: noviembre-2006
Mensajes: 1
Antigüedad: 17 años, 7 meses
Puntos: 0
prueba esto

if rsp.eof then
'aca reemplasaria el insert to
rsp.AddNew
rsp("clicks")= 1
rsp("page") = Codigo
rsp("fecha") = fecha <========== linea 30
rsp("tipo") = tipo
rsp.update
else

__________________________________________________ ______________
rsp("fecha") = Trim(fecha) <========== linea 30
__________________________________________________ _______________
rsp("tipo") = tipo
rsp.update
else

************************************************** ******
  #8 (permalink)  
Antiguo 16/11/2006, 18:29
 
Fecha de Ingreso: octubre-2003
Ubicación: La Paz - Bolivia
Mensajes: 116
Antigüedad: 20 años, 8 meses
Puntos: 1
Te da error por que en base de datos MySQL si tienes un campo tipo DateTime o Date tienes que trabajar con el siguiente formato de fecha YYYY-MM-DD HH:MM:SS prueba en cambiar tu formato de fecha y veras que te guarda el campo... :D

Saludos
__________________
"El viento puede soplar fuerte, pero la montaña no lo reverencia"
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 23:24.