Foros del Web » Programando para Internet » PHP »

Consulta de Uso - COntador

Estas en el tema de Consulta de Uso - COntador en el foro de PHP en Foros del Web. Hola a todos... tengo este pequeno script para control interno de Acceso al sitio.. supuestamente cad 3 horas muere la cookee y entonces solo ahi ...
  #1 (permalink)  
Antiguo 20/12/2006, 14:32
 
Fecha de Ingreso: noviembre-2004
Ubicación: Montréal - Santa Fe
Mensajes: 140
Antigüedad: 19 años, 5 meses
Puntos: 2
Consulta de Uso - COntador

Hola a todos... tengo este pequeno script para control interno de Acceso al sitio.. supuestamente cad 3 horas muere la cookee y entonces solo ahi suma una nueva visita... yo verifque y respetaba el tiempo.. el tema es que por dia me da como 500 visitas y sin embargo el webalize me tira la mitad y google analitic me tira solo 80.... esta mal este codigo??? porque tanta diferencia??
alguien tiene idea del tema?

Gracias

Código PHP:
<?php

  session_register
('contador');
 
session_start();
  
$conn db_connect();

if (!isset(
$contador)){
   
$contador visitas($conn);
  }
  
function 
db_connect()
{
   
$result mysql_pconnect('xxx''xxx''xxx'); 
   if (!
$result)
      return 
false;
   if (!@
mysql_select_db('xxxxx'))
      return 
false;

   return 
$result;
}

function 
visitas($con) {

    
// Tiempo que se guardará la cookie (Por defecto 10 minutos)
    
$minutos 180;
    
// ------------------
    // Se deshabilito esto porque tomaba la hora del sistema por PHP y no funcionba el MySQL
    //$laFecha = getdate();
    //$mesActual = $laFecha["mon"];
    //$anioActual = $laFecha["year"];
    // Busco el mes actual
    
    // Desde ahora la toma de la hora es por las funciones YEAR y MONTH desde el MYSQL
    
$anioActual1 mysql_query("SELECT YEAR(current_date())");
    
$mesActual1 mysql_query("SELECT MONTH(current_date())");
    
$anioActual mysql_fetch_row($anioActual1);
    
$mesActual mysql_fetch_row($mesActual1);
    
    
//Use las mismas variables... pero ahora como se trata de un ARRAY [0]
    
    
    
    
$resultadoSQL mysql_query("SELECT * from estadisticas WHERE mes=$mesActual[0] AND anio=$anioActual[0]",$con);
    
// Inicializo los valores en el mes y año actuales y las visitas en 0
    
if(mysql_num_rows($resultadoSQL) == 0) {
        
$actualizacion mysql_query("INSERT INTO estadisticas (mes, anio, visitas) VALUES ($mesActual[0], $anioActual[0], 1)",$con); //$anioActual[0], 1)",$con); '2006'
    
}
    
// Sumo todas las visitas del sitio desde el primer mes al actual
    
$resultadoSQL mysql_query("SELECT SUM(visitas) from estadisticas",$con);
    
$datosStats mysql_fetch_row($resultadoSQL);
    
$total $datosStats[0];
    
$resultadoSQL mysql_query("SELECT * from estadisticas order by anio desc, mes desc",$con); //
    
$datosMensual mysql_fetch_row($resultadoSQL);
    
$elMes $datosMensual[0];
    
$elAnio $datosMensual[1];
    
$visitasDelMes $datosMensual[2];
    
$visitante $_COOKIE['misVisitas'];
    if(!isset(
$visitante)) {
      
setcookie("misVisitas","visitante",time()+(60*$minutos),"/");
      if((
$mesActual!=$elMes) AND ($anioActual=!$elAnio)) {
          
$elMes=0;
        
$elAnio=0;
      }
      
//if(($mesActual!=$elMes)) {
          //$elMes=0;
        //esto era el original.. ahora se cambio para el tema del ano
      //}
      
$total++;
      
$visitasDelMes++;
      
$actualización mysql_query("UPDATE estadisticas set visitas=$visitasDelMes WHERE mes=$mesActual[0] AND anio=$elAnio",$con); // AND anio='2006'",$con);
    
}
    
$resultadoVisitas[0] = $total//Total de visitas en la página
    
$resultadoVisitas[1] = $visitasDelMes//Visitas totales del Mes actual
    
return $resultadoVisitas;
}  
?>
  #2 (permalink)  
Antiguo 23/12/2006, 05:26
Avatar de .php  
Fecha de Ingreso: julio-2006
Mensajes: 481
Antigüedad: 17 años, 8 meses
Puntos: 5
Re: Consulta de Uso - COntador

Código PHP:
session_register('contador'); //esta obsoleto
$_SESSION['contador']; //esto es lo correcto 
__________________
~~[FiDeLio]~~
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 06:01.