Consejos útiles

Cómo escribir un contador de visitas a sitios web en PHP

Buen dia Creo que todavía recuerdan cómo recientemente, después de pequeños fallos en los servidores de Google, muchos sitios también fallaron.
De hecho, esta situación puede ocurrir con cualquier servicio en Internet, por lo que es mejor estar seguro nuevamente.
Para muchas organizaciones, las estadísticas de tráfico del sitio afectan el trabajo de los vendedores que determinan qué ciudades tienen más demanda de productos, etc. Pero, ¿qué pasa si el servicio de estadísticas que se usa en el sitio falla temporalmente?

Hay una solución: use su script para rastrear visitas al sitio con servicios de terceros.

Nuestro script constará de tres archivos:

  • stat.php - Incluye cada página que necesita ser monitoreada
  • stat.log: archivo en el que se registrará el historial de visitas
  • seestats.php - archivo para ver estadísticas

De hecho, se puede usar cualquier nombre de archivo.


Para evitar cavar manualmente el archivo stat.log cada vez, cree un archivo para mostrar las estadísticas de las visitas al sitio:
Archivo seestats.php


Eso es todo! Ahora, incluso con la caída de liveinternet o Yandex.Metrica, ¡siempre puedes averiguar quién vino a tu sitio!

Este artículo no está sujeto a comentarios, ya que su autor aún no es miembro de la comunidad. Puede contactar al autor solo después de que reciba una invitación de uno de los miembros de la comunidad. Hasta ese momento, su nombre de usuario estará oculto por un alias.

Popular

  • Inicio
  • ->
  • Materiales
  • ->
  • Contador de visitas al sitio web de bricolaje en PHP y MySQL

Reg.ru: dominios y hosting

El mayor registrador y proveedor de alojamiento en Rusia.

Más de 2 millones de nombres de dominio en servicio.

Promoción, dominio de correo, soluciones empresariales.

Más de 700 mil clientes en todo el mundo ya han hecho su elección.

Curso gratuito "Practica HTML5 y CSS3"

Aprenda un video curso paso a paso gratis

sobre los conceptos básicos del diseño adaptativo

HTML5 y CSS3 desde cero.

Marco Bootstrap: diseño adaptable rápido

Video curso paso a paso sobre los conceptos básicos del diseño adaptativo en el marco Bootstrap.

Aprenda a diseñar de manera fácil, rápida y eficiente utilizando una herramienta poderosa y práctica.

Diseño para ordenar y obtener dinero.

¿Qué necesitas saber para crear sitios PHP?

La respuesta está aquí. Solo lo más importante y útil para un desarrollador web novato.

¡Aprenda a crear sitios PHP de calidad en solo 2 horas y 27 minutos!

Construye tu sitio web en 3 horas y 30 minutos.

Después de ver este video curso, tendrá un sitio listo para usar en su computadora que usted mismo ha creado.

Solo tiene que llenarlo con la información necesaria y cambiar el diseño (opcional).

Aprenda los conceptos básicos de HTML y CSS en menos de 4 horas.

Después de ver este video curso, dejará de mirar con horror el código HTML y comprenderá cómo funciona.

Puede crear sus primeras páginas HTML y darles el aspecto que desee con CSS.

Curso gratuito de sitio web de WordPress

¿Quieres aprender WordPress CMS?

Obtenga lecciones sobre diseño y diseño de sitios web en WordPress.

Aprende a trabajar con temas y corta el diseño.

¡Curso de video gratuito sobre diseño, diseño e instalación de sitios web de dibujo en WordPress CMS!

¿Quieres aprender JavaScript, pero no sabes cómo abordarlo?

Después de completar el video curso, aprenderá los puntos básicos de trabajar con JavaScript.

Los mitos sobre la complejidad de trabajar con este lenguaje volarán y estarás listo para aprender JavaScript a un nivel más serio.

* Pase el mouse para pausar el desplazamiento.

Contador de visitas al sitio web de bricolaje en PHP y MySQL

Tamaño: 53,8 Mb.

Duración: 34 minutos 25 segundos

En esta lección, veremos cómo puede hacer un contador de visitas simple para su sitio. Un ejemplo que implementaremos en PHP usando una base de datos.

Está claro que ahora hay muchas soluciones preparadas, comenzando desde liveinternet y mail.ruy terminando con Yandex.Metrica.

Todos estos servicios proporcionan mucha información estadística diferente, pero todavía se me pide periódicamente que le diga cómo puede crear incluso su propio contador simple para visitas al sitio.

No registraremos decenas y cientos de parámetros, como lo hacen monstruos como Yandex. Le mostraré el principio de crear un contador y, si lo desea, puede agregar más funciones allí, si es necesario.

Todas las fuentes utilizadas en la lección se adjuntan al archivo junto con el video tutorial.

Puede ver esta lección ahora mismo o descargarla a su computadora desde el enlace de arriba.

Debajo del video encontrará una versión abreviada de texto para este video tutorial.

Una breve descripción de la lección (ver video para más detalles):

Que necesitamos

1. 4 archivos casi idénticos que desempeñan el papel de diferentes páginas del sitio (index.php, contactos.php, about.php y uslugi.php)
2. Archivo de acceso para configurar la codificación del servidor en UTF-8
3. La carpeta css con la hoja de estilo. Hay algunos estilos simples para nuestras páginas.
4. Inc carpeta con archivos de inclusión. Hay tres de ellos:
- archivo de conexión de base de datos
- Un archivo que se conectará en el lugar correcto de la página para mostrar el contador
- El script principal en el que se registra la lógica del contador
5. La carpeta de administración con el archivo index.php. En este archivo podremos ver las estadísticas de visitas al sitio

¿Cómo funciona eso?

1. Crear un proyecto en Denver (o en un servidor real)

Creé un host en Denver con el nombre estadísticay en la carpeta www son todos los archivos del sitio.

2. Crear una base de datos

Pasemos a crear una base donde tengamos toda la información. Vamos a llamarla estadísticas y crea dos tablas en él.

Si no desea crear tablas manualmente, puede usar el volcado de la base de datos (adjunto en materiales adicionales) y ejecutar la consulta SQL en la pestaña SQL después de crear la base de datos.

Entonces crea la primera tabla. Vamos a llamarla ips - almacenará los identificadores de las direcciones IP y las direcciones IP de los propios visitantes del sitio.

La tabla tendrá 2 campos:

- id_id (int (12), clave primaria, incremento automático) - identificador de la dirección IP,
- ip_address (varchar (50)): la dirección IP del visitante.

Luego creamos segunda mesa. Vamos a llamarla visitas - almacenará información sobre visitas al sitio.

Habrá 4 campos en la tabla:

visit_id (int (12), clave primaria, incremento automático): identificador de visita,
fecha (fecha) - fecha de visita,
hosts int (12): el número de hosts (visitas únicas),
views int (12) - el número de visitas (páginas vistas).

Como resultado, la base se verá así:

3. Disposiciones básicas

Ahora que se creó la base de datos, puede pasar a varios puntos a partir de los cuales desarrollaremos al escribir el script:

1. Determinaremos el visitante único por dirección IP. 1 dirección IP equivale a 1 visitante único (host).

2. Las visitas de 1 día con la misma dirección IP no aumentan la cantidad de visitantes únicos ese día.

3. Cualquier visita al sitio durante el día aumenta el contador de visitas (visitas) en 1 (independientemente de si se realiza desde una dirección IP única hoy o no).

4. Determinaremos el comienzo del día de la siguiente manera: cuando una persona visita el sitio, verificaremos si hay alguno en la tabla visitas cualquier entrada para la fecha de hoy. Si no, el visitante actual es el primer visitante en estos días.

5. Una vez al día, la tabla con las direcciones IP se limpia para que podamos ingresar las direcciones IP en el día actual y recopilar estadísticas sobre las visitas de hoy al sitio (esto se hace solo por el hecho de que se descubrió que la primera en el día actual días visitante).

4. Escribimos archivos de página del sitio (index.php, contactos.php, about.php y uslugi.php)

Como los 4 archivos de las páginas del sitio son casi idénticos, consideraremos solo la página index.php. Las tres páginas restantes (contactos.php, about.php y uslugi.php) difieren solo en las etiquetas titulo y h2en el que se escriben otros nombres de página.

Entonces archivo index.php:

Al principio incluimos el archivo count.php, que contiene toda la lógica del contador.

A continuación se incluye la hoja de estilo y el marcado simple. En bloque div con id nav se adjunta un menú y solo se escriben algunos estilos simples en la hoja de estilo.

En la parte inferior, frente a la etiqueta de cierre. cuerpo incluimos el archivo show_stats.php, que contiene el código del contador en sí, es decir Este archivo ya está generando directamente lo que mostraremos en la pantalla.

Es decir en cada página del sitio mostraremos un contador, y se indicará cuántos visitantes únicos y visitas fueron hoy. Analizaremos este archivo más tarde.

5. Escribimos la hoja de estilo (style.css)

Los estilos, como puedes ver, son muy simples. Establecemos la sangría, el tamaño de fuente y el tipo de letra, eliminamos el subrayado de los enlaces en el menú y cambiamos el color de fondo al pasar el cursor sobre el elemento de la lista.

Además, usamos la propiedad exhibir con valor en línea para que nuestro menú tenga un aspecto horizontal en lugar de vertical.

6. Escribimos el archivo .htaccess

Por si acaso, cree un archivo en la raíz del sitio .htaccess con una sola directiva para especificar la codificación UTF-8:

Este paso puede ser redundante si la codificación del servidor ya se ha establecido en este valor.

7. Conéctese a la base de datos (db.php)

En archivo db.php Se especifican los parámetros para conectarse a la base de datos: host, nombre de la base de datos, nombre de usuario y contraseña.

La conexión se realiza directamente en el mismo archivo y el identificador de conexión se ingresa en la variable $ db. En caso de error, se muestra un mensaje que indica que no es posible conectarse a la base de datos.

7. Escribimos el archivo principal con lógica (count.php)

A continuación se muestra su código, que analizaremos brevemente:

Así que primero incluimos el archivo bd.php, proporcionando comunicación con la base de datos, después de lo cual comenzamos a escribir el código principal.

Primero lo primero, obtenemos de la matriz global $ _SERVER Dirección IP del visitante y guardar la fecha actual.

Necesitamos una fecha para verificar si ya ha habido visitas hoy o no, este es solo nuestro siguiente paso.

Además, solo tenemos 2 opciones: o no ha habido visitas hoy, o ya ha habido visitas hoy.

En el primer caso (si aún no ha habido visitas) y el visitante actual es el primero en estos días, limpiamos la tabla con direcciones IP.

Necesitamos esto para comenzar a recopilar estadísticas ya hoy.

Además, ingresamos en la base de datos la dirección IP del visitante actual, y en la base de datos para el día actual ponemos en los campos de vistas y visitantes únicos por unidad, porque Esta es la primera persona en traer hoy el primer hit y el primer host.

La segunda opción es cuando las visitas ya han sido hoy..

En este caso, verificamos si la dirección IP desde la cual la llamada ya está en la base de datos ya está en la base de datos. solo necesitamos considerar direcciones IP únicas dentro de un día.

Si resulta que tal dirección IP ya existía hoy, entonces agregamos +1 al valor de vista actual y nada más.

Si hoy no existiera tal dirección IP (es decir, el visitante es único), entonces guardamos su IP en la base de datos y actualizamos los valores tanto del número de visitantes únicos como de las vistas (es decir, aumentamos los valores de ambos campos en uno).

En este archivo count.php Se puede considerar desmontado.

8. Escribimos un archivo que muestra el contador en la página (show_stats.php)

Archivo show_stats.php utilizamos en cada una de las páginas para mostrar información estadística. Aquí está su código:

Como puede ver, este archivo es mucho más simple.

Aquí solo obtenemos las estadísticas para la fecha actual de la base de datos, después de lo cual usamos las claves de la matriz resultante $ fila para mostrar el número de visitantes únicos (campo anfitrión) y vistas (campo vistas).

9. Cree el archivo del panel de administración (index.php en la carpeta admin)

En este archivo presentaremos las estadísticas de visitas en forma de tabla.

Además, nos damos cuenta de la capacidad de recibir estadísticas durante un cierto período de tiempo. Debajo está el código del archivo index.php:

Primero conéctese a la base. Luego formamos dos enlaces con parámetros que, cuando hacemos clic en ellos, recibirán datos durante un cierto intervalo de tiempo (en el ejemplo: durante 1 día y 1 semana).

También verificamos la matriz global. $ _GET por la presencia del parámetro pasado por nosotros (intervalo) y, si el valor de este parámetro no es un número, mostramos una advertencia correspondiente.

Si todo está bien, entonces hacemos una solicitud a la base de datos, extrayendo de ella todos los registros ordenados por fecha en orden inverso en la cantidad de piezas especificadas en el parámetro intervalo.

Después de eso comenzamos el ciclo mientras que y en él formamos las filas de la tabla, mostrando los elementos de la matriz resultante en sus celdas $ fila (fecha, anfitriones y vistas), lo que da como resultado una lista de todas las visitas durante el período de tiempo especificado.

Bueno, en esto, el análisis del guión puede considerarse terminado. Si lo desea, puede modificarlo, forzándolo, por ejemplo, a recopilar más estadísticas.

Si no comprende completamente la breve revisión de texto, estudie la versión completa de la lección en formato de video en esta página anterior.

¡Buena suerte a ti y a la conexión!

P.S. ¿Quieres trabajar fácilmente con PHP? Preste atención a las lecciones premium sobre varios aspectos de la construcción del sitio, incluida la programación en PHP, así como un curso gratuito sobre cómo crear su sistema CMS en PHP desde cero. Todo esto lo ayudará a aprender rápida y fácilmente este poderoso lenguaje de desarrollo web:

¿Te gusta el material y quieres agradecer?
¡Solo compártelo con tus amigos y colegas!

Recopilamos datos y transmitimos estadísticas al mostrador

Determinaremos la dirección IP y la fecha de visita del visitante mediante PHP, y todo lo demás mediante JavaScript. Escribamos un código que pondremos en las páginas de nuestro sitio y con la ayuda de los cuales encontraremos la información necesaria sobre el visitante. Primero, descubriremos si las cookies están habilitadas en el navegador del visitante. Para hacer esto, debe pasar la cookie al navegador y averiguar el resultado, ya sea que haya recibido una cookie o no. Guardaremos este valor en la variable cookie_detect:

Como resultado, a la variable cookie_detect se le asignará la cadena c = Sí si las cookies están habilitadas en el navegador o c = No si están deshabilitadas. Ahora determinaremos todo lo demás e inmediatamente pasaremos los datos recibidos a un script que procesará la información y la guardará en la base de datos:

La función de JavaScript Math.random () se usa aquí para generar, en cada carga de página, un nuevo número aleatorio en la dirección del contador. Esto se hace para que el navegador acceda al servidor cada vez, en lugar de tomar datos del caché, y podamos obtener las estadísticas más precisas. Si no entiende algo aquí, lea el artículo "Cómo pasar una variable de JavaScript a PHP", y también lea el manual de JavaScript.

No se olvide de los visitantes que tienen JavaScript deshabilitado. Sin JavaScript, solo podemos encontrar la dirección IP del visitante:

Lado del servidor

Toda la información sobre los visitantes se almacenará en una base de datos. Usaremos MySQL como el más común. Ahora necesita crear una base de datos y tablas para almacenar la información recopilada. Cree el archivo de instalación install.php y escriba lo siguiente allí:

En estas tablas guardaremos todos los datos recibidos. Cree el archivo config.inc.php e ingrese el nombre de usuario, contraseña, servidor y nombre de la base de datos allí:

Si solo está copiando el código de este artículo, preste especial atención a config.inc.php. Al comienzo de este archivo, no debería haber espacios antes; se pueden copiar al archivo cuando se selecciona el código. La presencia de cualquier personaje en los lugares indicados puede interferir con el funcionamiento del contador. Lo mismo ocurre con el archivo counter.php. Además, no olvide cambiar el nombre de usuario y la contraseña de la base de datos a los suyos.

Iniciamos el servidor y escribimos la ruta al archivo de instalación en la barra de direcciones del navegador:

Si hizo todo correctamente, verá un mensaje: "la instalación se completó correctamente". Ahora escribimos counter.php, que guardará todos los datos recibidos y generará una imagen de contador:

Para generar una imagen, se utiliza la biblioteca PHP GD2. Dibujamos una imagen de 88x31 píxeles en un editor gráfico y la guardamos en formato gif con el nombre counter.gif. Abrimos la página del sitio en el que está instalado el código de contador y disfrutamos del resultado.


Así es como se ve nuestro contador de visitas gráfico

En la parte superior del mostrador, se muestra el número total de visitas de todos los tiempos, en el medio están las visitas de hoy y en la parte inferior los anfitriones de hoy.

Interfaz de administración

Ahora escribiremos admin.php, con el que veremos los datos recibidos y eliminaremos las entradas innecesarias antiguas:


Interfaz de administración - Ver estadísticas de visitas al sitio

Puede ampliar el contador de visitantes. Por ejemplo, por árbitro puede averiguar de qué motor de búsqueda proviene un visitante y qué ingresó en la barra de búsqueda para encontrar su sitio.

Como puede ver, no hay nada complicado en esto. Si está familiarizado con PHP y MySQL, leer este artículo puede escribir fácilmente su SpyLog.

Otras entradas relacionadas en la sección de artículos PHP y MySQL