Foros del Web » Programando para Internet » PHP »

Contador de visitas personalizado

Estas en el tema de Contador de visitas personalizado en el foro de PHP en Foros del Web. Hola a todo el mundo ayer aprendí a hacer un contador de visitas que guarda las visitas en un archivo txt y luego las muestra ...
  #1 (permalink)  
Antiguo 14/09/2011, 01:55
Avatar de JaviCN  
Fecha de Ingreso: abril-2009
Ubicación: Huelva, España
Mensajes: 76
Antigüedad: 15 años, 8 meses
Puntos: 2
Contador de visitas personalizado

Hola a todo el mundo ayer aprendí a hacer un contador de visitas que guarda las visitas en un archivo txt y luego las muestra en la web, pero llevo desde entonces intentando hacer que cada carácter que muestra me lo cambie por una imagen de ese numero para hacerlo mas presentable ¿como sería? llevo bastante tiempo intentándolo pero no lo consigo, probé con un if pero lo único que consigo es cambiar los números pero solo cuando están solos (del 0 al 9)
el código seria este

Código PHP:
$visitas file_get_contents("visitas.txt");
    
$visitas++;
    
file_put_contents("visitas.txt",$visitas);
    
    
$visitas file_get_contents("visitas.txt");
        echo 
$visitas
  #2 (permalink)  
Antiguo 14/09/2011, 02:12
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 897
Antigüedad: 18 años, 1 mes
Puntos: 32
Respuesta: Contador de visitas personalizado

Hola.

Yo lo que haría, si lo quieres hacer bien, es guardarlo en una base de datos.

Guardaría los siguientes datos:
Ip, Fecha, hora, pagina visita, de que página viene y pais.

La ip la consigues con $_SERVER["REMOTE_ADDR"];
pagina que visita $_SERVER["REQUEST_URI"]
La pagina de donde viene $_SERVER[HTTP_REFERER]

Para saber el pais, busca esto en google para mas info: geoiploc.php

Todo esto lo pones un fichero php que será llamado desde tus ficheros de la página, ya sabes, le pones un include "/visitas.php" y listo.

Con todo esto ya podrás hacer una estadísticas mas detallada, por ip, por fecha, etc... a la hora de hacer una gráfica, haces un conteo por lo que quieras y lo muestra por pantalla con css

Así es como lo hago yo...

Saludos.
  #3 (permalink)  
Antiguo 14/09/2011, 02:17
Avatar de JaviCN  
Fecha de Ingreso: abril-2009
Ubicación: Huelva, España
Mensajes: 76
Antigüedad: 15 años, 8 meses
Puntos: 2
Respuesta: Contador de visitas personalizado

Cita:
Iniciado por gogupe Ver Mensaje
Hola.

Yo lo que haría, si lo quieres hacer bien, es guardarlo en una base de datos.

Guardaría los siguientes datos:
Ip, Fecha, hora, pagina visita, de que página viene y pais.

La ip la consigues con $_SERVER["REMOTE_ADDR"];
pagina que visita $_SERVER["REQUEST_URI"]
La pagina de donde viene $_SERVER[HTTP_REFERER]

Para saber el pais, busca esto en google para mas info: geoiploc.php

Todo esto lo pones un fichero php que será llamado desde tus ficheros de la página, ya sabes, le pones un include "/visitas.php" y listo.

Con todo esto ya podrás hacer una estadísticas mas detallada, por ip, por fecha, etc... a la hora de hacer una gráfica, haces un conteo por lo que quieras y lo muestra por pantalla con css

Así es como lo hago yo...

Saludos.
Tiene buena pinta pero ¿como seria el código exactamente? estoy un poco en pañales en estos jaleos básicamente por que empece ayer con esto y me vendría de escándalo una ayudita.
  #4 (permalink)  
Antiguo 14/09/2011, 02:35
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 897
Antigüedad: 18 años, 1 mes
Puntos: 32
Respuesta: Contador de visitas personalizado

Te hago un pequeño resumen, ya luego tu lo adaptas a tu web.

visitas.php
Código PHP:
<?php
include "conexion.php";
include 
"geoiploc.php";

$fecha=time();
$fecha_formatdate "Y/m/d" $fecha );
$hora_format=date("H:i:s"$fecha);

$ip $_SERVER["REMOTE_ADDR"];
$pagina=$_SERVER["REQUEST_URI"];
$pagina_viene=$_SERVER["HTTP_REFERER"];

$paisgetCountryFromIP($ip" NamE ");

$sql="INSERT INTO visitas SET ip='$ip', fecha='fecha_format', hora='hora_format', pagina='$pagina', viene='$pagina_viene', pais='$pais'";

mysql_query($sql);
?>
Para ejecutar éste código, haz include "visitas.php"

En conexión.php introduce los datos de conexión de tu base de datos.

Tienes que descargarte el fichero geoiploc.php, buscado en google y lo encontrarás.

Si quieres rizar el rizo, puedes hacer otra cosa... si estás usando un sistema de login en tu proyecto. Podrías hacer otra tabla llamado por ejemplo "Eventos", guarda el id del usuario, la fecha, hora y la página que visita, con esto puedes hacer una estadística de lo que ven tus usuarios.
  #5 (permalink)  
Antiguo 14/09/2011, 02:56
Avatar de JaviCN  
Fecha de Ingreso: abril-2009
Ubicación: Huelva, España
Mensajes: 76
Antigüedad: 15 años, 8 meses
Puntos: 2
Respuesta: Contador de visitas personalizado

Estoy mirando el codigo y creo que no es exactamente lo que intento hacer, lo que quiero hacer es que en la web se vea el numero de visitas que tiene la pagina pero en vez de que salgan en numeros normales que salgan los numeros en imagenes
  #6 (permalink)  
Antiguo 14/09/2011, 03:16
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 897
Antigüedad: 18 años, 1 mes
Puntos: 32
Respuesta: Contador de visitas personalizado

Vale, entonces lo que te he dicho anteriormente te queda muy grande para eso...

A ver si alguien te puede echar una mano, porque asi de pronto, tendría que hacerlo y hacer pruebas, etc.
  #7 (permalink)  
Antiguo 05/10/2011, 05:51
 
Fecha de Ingreso: mayo-2010
Ubicación: Madrid
Mensajes: 74
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Contador de visitas personalizado

Cita:
Iniciado por gogupe Ver Mensaje
Te hago un pequeño resumen, ya luego tu lo adaptas a tu web.

visitas.php
Código PHP:
<?php
include "conexion.php";
include 
"geoiploc.php";

$fecha=time();
$fecha_formatdate "Y/m/d" $fecha );
$hora_format=date("H:i:s"$fecha);

$ip $_SERVER["REMOTE_ADDR"];
$pagina=$_SERVER["REQUEST_URI"];
$pagina_viene=$_SERVER["HTTP_REFERER"];

$paisgetCountryFromIP($ip" NamE ");

$sql="INSERT INTO visitas SET ip='$ip', fecha='fecha_format', hora='hora_format', pagina='$pagina', viene='$pagina_viene', pais='$pais'";

mysql_query($sql);
?>
Para ejecutar éste código, haz include "visitas.php"

En conexión.php introduce los datos de conexión de tu base de datos.

Tienes que descargarte el fichero geoiploc.php, buscado en google y lo encontrarás.

Si quieres rizar el rizo, puedes hacer otra cosa... si estás usando un sistema de login en tu proyecto. Podrías hacer otra tabla llamado por ejemplo "Eventos", guarda el id del usuario, la fecha, hora y la página que visita, con esto puedes hacer una estadística de lo que ven tus usuarios.
Hola.

Buscando en el foro he encontrado esta información y creo que me puede ser útil pero me han surgido algunas preguntas.

Se que los proveedores de espacio web cuentan con sus propias herramientas de estadísticas y que lo más sencillo es hacer uso de estas pero en mi caso se trata de una web interna alojada en un equipo propio con lo que no puedo contar con esas herramientas.

Me ha planteado buscar alguna herramienta ya creada que gestione las estadísticas pero no he visto nada que me vea capaz de implantar. Por contra el código que has expuesto sí lo comprendo y creo que me serviría. He buscado en internet y supongo que geoiploc.php no tiene ningún sentido para mi caso al tratarse de una web interna sin acceso desde el exterior. ¿Estoy en lo cierto?

Sobre el funcionamiento de este código que envías entiendo que he de crear un fichero con éste código y luego símplemente meter un include al mismo en aquellos ficheros que quiero que compute ¿no?

¿La variable REQUEST_URI recoge el nombre del fichero visitado? ¿La URL?

¿Hay alguna variable que recoja el nombre del equipo y no la ip? Mi empresa usa DHCP así que la IP no es que me sirva de mucho.

¿Hay alguna variable que permita recoger el nombre de quien inició sesión en el ordenador?

Gracias y un saludo
  #8 (permalink)  
Antiguo 31/08/2012, 12:11
 
Fecha de Ingreso: noviembre-2011
Mensajes: 108
Antigüedad: 13 años, 1 mes
Puntos: 5
Respuesta: Contador de visitas personalizado

A lo mejor ya encontraste una solución, pero te dejo un tema que coloqué hace días:

http://www.forosdelweb.com/f18/duda-...lugar-1010438/

Ese es un ejemplo de Contador con imágenes en lugar de números.
__________________
Jlx4
  #9 (permalink)  
Antiguo 18/10/2013, 08:46
Avatar de leonaryoel  
Fecha de Ingreso: octubre-2013
Ubicación: Villa Clara
Mensajes: 64
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Contador de visitas personalizado

a ver, esto me resulta un poco complicado, yo tengo algo de experiencia en la web y he trabajado bastante en esto, realizo web desde hace un año para redes LAN, es decir web de empresas con redes internas y eso. En internet he buscado muchas formas de poner un contador de visitas con mucha apariencia y todos los que he encontrado es mediante internet, con un código qu ete dan varias páginas y ya, resuleto pero a mi no me sirve esto producto a que las páginas que hago son para redes sin acceso a internet, por lo tanto es muy factible para personas como yo que nos ayudaran con algunos códigos como este que nos ofrecen el el principio, no creen?
  #10 (permalink)  
Antiguo 18/10/2013, 09:03
Avatar de alexisverano  
Fecha de Ingreso: septiembre-2008
Ubicación: La Habana.Cuba
Mensajes: 298
Antigüedad: 16 años, 2 meses
Puntos: 36
Respuesta: Contador de visitas personalizado

Amig@s,

Buscando un poquito en internet, encontre estos dos articulos que pueden ser de utilidad para este post.

http://www.baluart.net/articulo/cont...p-con-imagenes

http://www.desarrolloweb.com/articulos/1352.php
  #11 (permalink)  
Antiguo 18/10/2013, 19:43
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 16 años, 9 meses
Puntos: 96
Respuesta: Contador de visitas personalizado

Primero crea 10 imagenes, del 0 a 9, puedes crear un array con la ruta de las imagenes, luego cuentas cuantos digitos tiene el contador, despues con un for muestras las imagenes, algo asi

Código PHP:
Ver original
  1. for($x=0; $x<9; $x++){
  2. $arrayimg[$x]="ruta/de/laimagen/".$x.".jpg";
  3. }
  4. $len=(strlen($visitas)-1);
  5. for($i=0; $i<$len; $i++){
  6. if(in_array($visitas[$i],$arrayimg)){
  7. echo "<img src='".$arrayimg[$visitas[$i]]."'>";
  8. }
  9. }
Es una idea, no he ptobado.el codigo pero deberia funcionar
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.

Última edición por xSkArx; 18/10/2013 a las 20:01

Etiquetas: contador, personalizado, visitas
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 23:06.