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

conter impresiones de imagenes

Estas en el tema de conter impresiones de imagenes en el foro de ASP Clásico en Foros del Web. Hola tengo una base de datos con: id nombre imagen num_impresiones num_clics y no se como hacer que cada vez que se vea me sume ...
  #1 (permalink)  
Antiguo 29/02/2004, 03:35
Avatar de engonga
Usuario no validado
 
Fecha de Ingreso: marzo-2002
Ubicación: Buenos Aires
Mensajes: 1.300
Antigüedad: 22 años, 2 meses
Puntos: 8
conter impresiones de imagenes

Hola tengo una base de datos con:

id
nombre imagen
num_impresiones
num_clics


y no se como hacer que cada vez que se vea me sume +1 en el campo de num_impressiones y tambien si me hacen clic que me sume + 1 en el campo de num_clics .
Esto último he pensado hacerlo con una pagina intermedia que me haga la funcion de sumar num_clics pero no lo tengo demasiado claro.

Alguien tiene alguna idea?

gracias
  #2 (permalink)  
Antiguo 29/02/2004, 08:43
 
Fecha de Ingreso: enero-2004
Mensajes: 57
Antigüedad: 20 años, 4 meses
Puntos: 0
hola!

Hola, yo tengo en una página un contador de clicks en un enlace, más o menos es lo mismo que contar los clicks en una imagen.

Te explico, yo puse primero un identificador (id=1, id=2...) y cuando pincho sobre el link, pongo:

<a href="contador/clicks.asp?id=49">En tu caso aki imagen src img... etc</a>

Y este click va a la página clicks.asp, que es esta:

Código:
clicks.asp

<%
Response.Buffer=TRUE

Dim url_ver, clicks, id, oConn, rs, SQL, url

id=Request.Querystring("id")

if id <>"" then

Set oConn=Server.CreateObject("ADODB.Connection")
oConn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("count_clicks.mdb"))
SQL="SELECT clicks, url_ver FROM count WHERE id='"&id&"'"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open SQL, oConn, 3, 3

rs("clicks")=rs("clicks")+1
rs.update
url=rs("url_ver")
Response.Redirect url

rs.Close
set rs=nothing
oConn.Close
set oConn=nothing
end if
%>
Esta página suma los clicks al número de identificación (id=49, en este caso) y lo guarda en la base de datos.

Tu deberás modificar los nombres, mi base es del tipo:
base: contador.mdb
tabla: count
datos en la tabla: id, clicks, url_ver

El url_ver es el url de la imagen (ej imagen.jpg).

Finalmente, para ver los números de clicks, usa la página mostrar.asp:

Código:
mostrar.asp

<%
Response.Buffer=TRUE

Dim clicks, download, id, oConn, rs, SQL

id=Request.Querystring("id")

if id <>"" then

Set oConn=Server.CreateObject("ADODB.Connection")
oConn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("count_clicks.mdb"))
SQL="SELECT clicks, download FROM count WHERE id='"&id&"'"
Set rs=Server.CreateObject("ADODB.RecordSet")

Response.Redirect("../html/id1.asp?clicks="&clicks&"&download="&download&"")

rs.Close
set rs=nothing
oConn.Close
set oConn=nothing
end if
%>
Espero, q te sirva. Léete bien el código porque es más fácil de lo que parece. A mi al principio me costó. El truco es leerte el código e intentar enterderlo.

Hasta Luego!
  #3 (permalink)  
Antiguo 29/02/2004, 08:52
Avatar de engonga
Usuario no validado
 
Fecha de Ingreso: marzo-2002
Ubicación: Buenos Aires
Mensajes: 1.300
Antigüedad: 22 años, 2 meses
Puntos: 8
ahora....

como puedo saber las veces que se ha mostrado una imagen?

y lo del response.buffer=true para que sirve?
  #4 (permalink)  
Antiguo 29/02/2004, 09:37
 
Fecha de Ingreso: enero-2004
Mensajes: 57
Antigüedad: 20 años, 4 meses
Puntos: 0
oops!

je! se me habia olvidado lo principal. En la página donde quieras mostrar los clicks q se han hecho sobre una imagen debes poner primero esto para llamar a la base de datos:

Código:
<%
Response.Buffer=TRUE

Dim clicks, download, id, oConn, rs, SQL

id=51

if id <>"" then

Set oConn=Server.CreateObject("ADODB.Connection")
oConn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../contador/count_clicks.mdb"))
SQL="SELECT clicks, download FROM count WHERE id='"&id&"'"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open SQL, oConn, 3, 3
clicks=rs("clicks")
download=rs("download")
%>
Y luego en la parte de la página donde quieras mostrar los clicks pones:
Visto: <%Response.Write clicks %> veces

La página deber ser nombre.asp

Espero q te sirva. Chao!
  #5 (permalink)  
Antiguo 29/02/2004, 09:39
 
Fecha de Ingreso: enero-2004
Mensajes: 57
Antigüedad: 20 años, 4 meses
Puntos: 0
otra cosa...

Tu lo de download lo puedes quitar, yo es que además de los clicks cuento los downloads que se hacen de ese identificador id=49 (creo q habia puesto al principio...)

Weno, nada más. Au!
  #6 (permalink)  
Antiguo 29/02/2004, 09:46
 
Fecha de Ingreso: enero-2004
Mensajes: 57
Antigüedad: 20 años, 4 meses
Puntos: 0
... y finalmente...

Lo del Response.Buffer=TRUE sirve para quitar la "basura" que pueda haber almacenada... no sé si me explico...

En cualquier manual de asp encontrarás una definición más exacta.

Chao!
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 20:56.