Foros del Web » Programando para Internet » PHP »

Contador visitas

Estas en el tema de Contador visitas en el foro de PHP en Foros del Web. Hola a todos. He conseguido por internet un código php que cuenta el número de veces desde la url donde te visitan: Código PHP: <?php ...
  #1 (permalink)  
Antiguo 09/07/2007, 21:07
 
Fecha de Ingreso: enero-2007
Mensajes: 158
Antigüedad: 17 años, 3 meses
Puntos: 2
Pregunta Contador visitas

Hola a todos.

He conseguido por internet un código php que cuenta el número de veces desde la url donde te visitan:

Código PHP:
<?php
//Incluyo el archivo de conexión a la base de datos
include_once("conectar_db.php");

$desde=$_SERVER['HTTP_REFERER'];

//Aqui dejamos solo http://www.pagina.com y kitamos todo lo demas
$patron '/^http:\/\/[a-z0-9.-]*\//';
preg_match($patron$desde$a);
$a=substr($a[0],0,-1);
//Aqui kitamos todo el http://www y dejamos ej: pagina.com
$sin_www=preg_replace("/^http:\/\/|[w]{3}\./","",$a);

//Aqui kitamos el www. de la url
$sin=preg_replace("/[w]{3}\./","",$a);

$url_nuestra=preg_replace("/[w]{3}\./","",$_SERVER['SERVER_NAME']);

//Aqui verificamos que la url no es la nuestra y que no este vacio.
if( !strpos($a,$url_nuestra) && $a != "" )
{

//hacemos un query y buscamos todas las url que contengan la parte de pagina.com
$query=mysql_query("SELECT url_direccion,url_id FROM contador_url WHERE url_direccion LIKE '%".$sin_www."%'",$conexion_db);
while(
$urles=mysql_fetch_array($query))
{
/*Aqui le kitamos el www. a la url k esta en la base de datos.
esto lo hago porque si alguien entra desde Ej: http://tupagina.com y en la base de datos esta como
http://www.tupagina.com, el script lo tomara como una url nueva cuando no lo es ,aunque los subdominios
los tomara como una URL nueva.*/
$limpiar=preg_replace("/[w]{3}\./","",$urles['url_direccion']);

//Aqui hacemos las comparaciones para ver si existe esta url en la BD.
if( $urles['url_direccion'] == $a || $limpiar == $a || $urles['url_direccion'] == $sin){
//Si existe la URL , entonces agarramos el ID de esa URL y salimos del bucle while.
$id_url=$urles['url_id'];
break;
}
}

if(!
$id_url)
{

mysql_query("INSERT INTO contador_url (url_direccion,url_contador) VALUES('$a','1')",$conexion_db);

else
mysql_query("UPDATE contador_url SET url_contador=url_contador+1 WHERE url_id='".$id_url."' ",$conexion_db);

}

?>
Pero este script añade a la base de datos todas las URL que me visitan a mi página web.

¿Alguien me podría decir las modificaciones que debería hacer para que solo cuente las visitas que recibo solo de las páginas web que yo ponga en la base de datos?

Gracias de antemano.
  #2 (permalink)  
Antiguo 10/07/2007, 02:13
Avatar de Bytevamp  
Fecha de Ingreso: junio-2005
Ubicación: /var/www/
Mensajes: 789
Antigüedad: 18 años, 10 meses
Puntos: 7
Re: Contador visitas

Basicamente solo modificar el final del script, y en lugar de:
Código PHP:
if(!$id_url)
{

mysql_query("INSERT INTO contador_url (url_direccion,url_contador) VALUES('$a','1')",$conexion_db);

else
mysql_query("UPDATE contador_url SET url_contador=url_contador+1 WHERE url_id='".$id_url."' ",$conexion_db);


poner:
Código PHP:
if($id_url)
{
mysql_query("UPDATE contador_url SET url_contador=url_contador+1 WHERE url_id='".$id_url."' ",$conexion_db);

Saludos.
__________________
"zankius veri mach" a todos los que me habeis ayudado.
carteles para inmobiliarias || alquiler de coches
  #3 (permalink)  
Antiguo 10/07/2007, 07:10
 
Fecha de Ingreso: enero-2007
Mensajes: 158
Antigüedad: 17 años, 3 meses
Puntos: 2
Re: Contador visitas

Bytevamp muchas gracias por tu ayuda.

Pensaba que sería así, pero no me fiaba mucho de mi mismo ;)

Existe alguna manera de hacer que cada 5 días, las visitas recibidas (contador_url) se pongan automaticamente a 0?

De este modo las paginas web que mas visitas me enviasen no se pondrian para siempre las primeras, ya que las visitas empezarian de 0 cada 5 dias, y asi las paginas que me enviasen menos visitas, tendrian mas oportunidades de aparecer en el top.

De nuevo, os doy las gracias, y espero una contestacion. GRACIASSSS
  #4 (permalink)  
Antiguo 10/07/2007, 08:38
 
Fecha de Ingreso: enero-2007
Mensajes: 158
Antigüedad: 17 años, 3 meses
Puntos: 2
Re: Contador visitas

Necesitaría crear un archivo php nuevo no? y con un txt almacenar una fecha y cada 5 días borrar las visitas o algo asi no?

La verdad que esto que explico no sabria hacerlo.

A ver si alguien me puede ayudar.

Gracias de nuevo
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 22:26.