Contadores en ASP

  • Autor Cobac
  • Fecha de inicio
Estado
Cerrado para nuevas respuestas
C

Cobac

Guest
#1
Os pongo un contador en asp, que he realizado yo y lo tengo en mi web, ademas te muestra los numeros como imagenes, osea que tu tienes que tener 10 imagenes .gif que van desde 0 hasta 9 y ya tienes el contador hecho .


Archivo global.asa

Insertar CODE, HTML o PHP:
<script language=vbscript runat=server>

Sub Application_OnStart

  Application("Activos") = 0

  set fso = createobject("scripting.filesystemobject")

  set act = fso.opentextfile(server.mappath("contador.txt"))

  Application("contador") = clng(act.readline)

  act.Close

End Sub

Sub Application_OnEnd

End Sub

Sub Session_OnStart

  If Request.Cookies ("contador") <> "" Then

  Else

  Application.Lock

  set fso = createobject("scripting.filesystemobject")

  set act = fso.opentextfile(server.mappath("contador.txt"))

  Application("contador") = Application("contador") + 1

  Set act = fso.CreateTextFile(server.mappath("contador.txt"), true)

  act.WriteLine(Application("contador"))

  act.Close

  Application.Unlock

  Response.Cookies("contador")="visitado"

  Response.Cookies("contador").Expires = now() + 5

End If

End Sub

Sub Session_OnEnd

End Sub

</script>

y luego en otro archivo (por ejemplo home.asp)

Insertar CODE, HTML o PHP:
<%

dim n

dim m

dim c(20)

for n=1 To len(Application("contador")) Step 1

   c(n-1)=(mid(Application("contador"),n,1))

Next

for m=0 To n-2 Step 1

   response.write ("<img src=/numeros/pekeños/"& c(m) &".gif hspace=0 width=13 height=19>")

Next

%>
os buscara la imagen que se encuentra en la carpeta /numeros/pekeños/ y que sea gif

por ejemplo tienes 123 visitas pues esto kedaria así en html

Insertar CODE, HTML o PHP:
<img src=/numeros/pekeños/1.gif hspace=0 width=13 height=19>

<img src=/numeros/pekeños/2.gif hspace=0 width=13 height=19>

<img src=/numeros/pekeños/3.gif hspace=0 width=13 height=19>
si tieneis algún problema o duda decidmelo

P.D.: la cookie dura 5 días desde el dia de su creacion, y para guardar las visitas crea un archivo llamado contador.txt en la carpeta raiz (cambiale los permisos -CHMOD- para que todos puedan leer y escribir) y le pones de valor inicial 0.
 
C

Cobac

Guest
#2
Usuarios activos en ASP

Bueno ahora os pongo uno para mostrar los usuarios activos de la web, las imagenes son igual que antes, sirven las mismas, solo que el global.asa cambia un poco, y la manera de mostrarlo solo es cambiar el nombre de la variable.

Archivo Global.asa

Insertar CODE, HTML o PHP:
<script language=vbscript runat=server>

Sub Application_OnStart

End Sub



Sub Application_OnEnd

End Sub

Sub Session_OnStart

   Application.Lock

   Application("Activos") = Application("Activos") + 1

   Application.Unlock

End Sub


Sub Session_OnEnd

   Application.Lock

   Application("Activos") = Application("Activos") - 1

   Application.Unlock

End Sub


</script>
Archivo .asp donde se quiere mostrar

Insertar CODE, HTML o PHP:
<%

   dim a

   dim b

   dim d(20)

   for b=1 To len(Application("Activos")) Step 1

      d(b-1)=(mid(Application("Activos"),b,1))

   Next

   for a=0 To b-2 Step 1

      response.write ("<img src=/numeros/pekeños/"& d(a) &".gif hspace=0 width=13 height=19>")


  Next

%>
Bueno para que lo entendais un poco os lo explico, en el global.asa cuando un usuario entra en nuestra web se le crea una sesión (de una duracion de 20 min si no especificamos otro tiempo) al iniciar la sesión la variable "Activos" que es una variable general (no como otras que solo son de una pagina) aumenta en 1, entonces por cada usuario que entra solo tenemos que aumentar esa variable y cuando acaba la sesión se disminuye la variable.

Alguna duda o demas decidmelo.

Saludos y espero que os sea util.
 
J

Javier

Guest
#3
Muy buenos scripts Cobac!

haber si yo también hago los equivalentes en PHP y se los posteo aquí :)

Saludos
 

bres

Ex-Mod
Miembro
#4
Bueno como Javier al final no los ha puesto en PHP, os voy a poner el que uso yo en mi web. Es muy simple y cutre, pero funciona.

Además lo he comentado, para que veáis:

Insertar CODE, HTML o PHP:
<?

$ctr=fopen("contador.cnt","r");// El archivo contador.cnt debe tener permisos de escritura para todos. Es un fichero de texto renombrado y vacío, aunque no hace falta que esté al principio en el servidor, porque la primera vez que ejecutamos el script lo crea solo (aunque dará error).En esta primera línea lo que se hace es abrir el archivo contador.cnt en modo lectura Aquí obrim l'arxiu contador.cnt en mode lectura

$i=fread($ctr,10);// La variable y coge como valor los 10 primeros carácteres del fichero (si es que hay tantos, sino coge los que haya, también se puede aumentar o disminuir este número).

$j=$i+1;				  

print ("Eres la visita nº: $j");   // Muestra por pantalla el número de visitas.

$sav=fopen("contador.cnt","w"); // Abre el archivo contador.cnt en modo de escritura

fwrite($sav,$j,10); // Guarda la variable j

fclose($sav);

?>
Eso es el código. Si queremos que ante una ip concreta no se active siempre se puede poner dentro de un bloque IF/ELSE del siguiente modo:

Insertar CODE, HTML o PHP:
if(stristr($_SERVER["HTTP_CLIENT_IP"],"XXX.XXX.XXX.XXX")){}

else{ 

//Aquí el código del contador.

}
 
C

Cobac

Guest
#5
buenos scripts :)

y los de javi aun los estamos esperando :)D

haber si me pongo a aprender php....

saludos
 
S

songokup

Guest
#6
Pero estos contadores son para paginas en php no? osea para la mia en html no sirven no?

Saludos...

Songoku
 
C

Cobac

Guest
#7
el php o asp depende de si lo interpreta el servidor o no

es decir en aruba.it (por ejemplo) si te pillaste hosting Windows o linux, linux te soportara php y Windows php y asp

entonces tu eso lo pones donde quieras que te salga el contador (en medio de tu codigo html) y cuando lo interprete el servidor enviara al navegador el correspondiente codigo html

saludos
 
S

songokup

Guest
#8
Pues es que cuando se cae miarroba (osea cada 3x2) el frame de la izquierda donde esta el contador no carga, por eso me interesaria poner un contador de estos. Pero tenemos que ablar por el msn porque no entendí bien como se hace xdd.

Saludos...

Songoku
 
C

Cobac

Guest
#9
pero que hosting tienes, soporta asp o php?

abre el notepad y escribe esto:

Insertar CODE, HTML o PHP:
<html>

<body>

<%response.write "hola songoku xD"%>

</body>

</html>
y lo guardas como prueba.asp

y luego en otro archivo esto:

Insertar CODE, HTML o PHP:
<html>

<body>

<?

print ("Hola songoku XD");

?>

</body>

</html>
y este lo guadas como prueba.php

y los subes al hosting y los pruebas, ya me diras cual te va, y luego te digo como meterlos .

saludos
 
S

songokup

Guest
#10
Pero si somos vecinos en aruba no recuedas? jeje, baya cabeza :D y funcionan los dos.

Saludos...

Songoku
 
C

Cobac

Guest
#11
Pero si somos vecinos en aruba no recuedas? jeje, baya cabeza xddd!! y funcionan los dos.
si me acuerdo, pero piensa que algúnos no soportan asp (conozco a uno que no le soporta asp :))

bueno vamos paso por paso

primero abre un editor de texto y pega esto:

Insertar CODE, HTML o PHP:
<script language=vbscript runat=server>

Sub Application_OnStart

 *Application("Activos") = 0

 *set fso = createobject("scripting.filesystemobject")

 *set act = fso.opentextfile(server.mappath("publiccontador.txt"))

 *Application("contador") = clng(act.readline)

 *act.Close

End Sub

Sub Application_OnEnd

End Sub

Sub Session_OnStart

 *If Request.Cookies ("contador") <> "" Then

 *Else

 *Application.Lock

 *set fso = createobject("scripting.filesystemobject")

 *set act = fso.opentextfile(server.mappath("publiccontador.txt"))

 *Application("contador") = Application("contador") + 1

 *Set act = fso.CreateTextFile(server.mappath("publiccontador.txt"), true)

 *act.WriteLine(Application("contador"))

 *act.Close

 *Application.Unlock

 *Response.Cookies("contador")="visitado"

 *Response.Cookies("contador").Expires = now() + 5

End If

End Sub

Sub Session_OnEnd

End Sub

</script>
lo guadas como global.asa y lo subes a la carpeta raiz de tu server (por este archivo pasan todas las conexiones a tu pagina)

y luego en tu pagina cambia esto:

Insertar CODE, HTML o PHP:
 * *<script LANGUAGE="JavaScript" src="http://miarroba.com/contadores/ver.php?id=105365"></SCRIPT>

 * *
por esto

Insertar CODE, HTML o PHP:
<%
dim n

dim m

dim c(20)

for n=1 To len(Application("contador")) Step 1

 *c(n-1)=(mid(Application("contador"),n,1))

Next

for m=0 To n-2 Step 1

 *response.write ("<img src=/numeros/pekeños/"& c(m) &".gif hspace=0 width=13 height=19>")

Next

%>
y lo guardas como izquierda.asp (en vez de extension .html)

luego creas un documento que se llame contador.txt y que tenga dentro 0

y lo subes a la carpeta /public/ de tu hosting, ya que esta es la unica que tiene permisos para todos los usuarios y luego haces 10 imagenes (desde el 0 hasta el 9) de numeros que sean .gif y que tengan un tamaño de 13x19 (aunque si quieres todo esto lo puedes cambiar en el script pero yo te digo como lo tendrias que hacer sin cambiar nada de codigo :))

y las guardas en la carpeta /numeros/pekeños/

asi es como lo tengo yo y te tendria que ir

saludos y suerte :)
 
S

songokup

Guest
#12
OK boy a probar pero si cambio eso de 13 height=19 por las medidas de mis imagenes sirve igual no?

Y por otro lado las imagenes en gif como deben llamarse? como el numero que llevan?

Saludos...

Songoku
 
C

Cobac

Guest
#13
OK boy a probar pero si cambio eso de 13 height=19 por las medidas de mis imagenes sirve igual no?
Y por otro lado las imagenes en gif como deben llamarse? como el numero que llevan?
sip 0.gif 1.gif etc....

por ejemplo tienes 123 visitas pues esto kedaria así en html

<img src=/numeros/pekeños/1.gif hspace=0 width=13 height=19>

<img src=/numeros/pekeños/2.gif hspace=0 width=13 height=19>

<img src=/numeros/pekeños/3.gif hspace=0 width=13 height=19>
eso lo he puesto en el primer post

saludos
 
S

songokup

Guest
#14
Vale, pero otra cosilla... el directorio public cual es el que esta justo encima del de lawebdegoku.com? es que ya no deja subir mas arriba y junto a lawebdegoku.com no hay ningún otro.

Saludos...

Songoku
 
C

Cobac

Guest
#15
bueno yo en carpeta raiz me referia al que se encuentra en /lawebdegoku.com (imagino que se te llamara así XD)

pues el public esta en /lawebdegoku.com/public

vamos hasta ahora siempre han traido ese directorio

saludos
 
S

songokup

Guest
#16
Juassssssss, pues no la había visto jajajajaja.

Saludos...

Songoku
 
C

Cobac

Guest
#17
los mayores problemas en esta vida son los despistes

y es un mal muy normal (demasiado :))

saludos y ya me contaras si te va todo
 
S

songokup

Guest
#18
Pues funciona pero a medias, me explico... veras lo que pasa es que si me logeo o incluso si cierro el nabegador y vuelvo a entrar no sube el numero de visitas en una mas sino que se queda como estaba.

Saludos...

Songoku
 
S

songokup

Guest
#19
Acabo de recordar que e el post dices que la cookie dura 5 dias, es por eso que no cuenta cuando vuelvo a entrar? osea que todas las veces que entre en estos 5 días no contaran? y como se hace para que cada vez que entre marque una visita? osea para que la cookie dure solo mientras estoy alli y al salir se borre?

Saludos...

Songoku
 
C

Cobac

Guest
#20
osea para que la cookie dure solo mientras estoy alli y al salir se borre?
eso no son visitas reales pillin XD

no te sube por dos razones la primera la cookie de 5 días y la segunda las sesiones de asp que duran 20 min

por ejemplo si borras las cookies, y entras en un intervalo menor de 20 min, el contador no subira y la cookie se te volvera a crear

saludos
 
Estado
Cerrado para nuevas respuestas
Arriba Pie