Muchas gracias Amigos por sus respuestas, me han servido mucho y voy a poner todo en practica para probar y ver que cosa se adapta mas a mis necesidades. Les estoy muy agradecido.
Con respecto a que la verdadera IP puede estar oculta tras un PROXY si lo tuve en cuentra a la hora de escribir el codigo que me guarda la IP en la BD. Lo voy a poner aqui por si a alguien le sirve:
Código PHP:
<?php
//Conexion a la BD e inicio en la Tabla de Vicitas
require('config.php');
//se requiere el archivo para validar los datos de usuario de bdd para conectar
if ($_SERVER) {
if ( $_SERVER[HTTP_X_FORWARDED_FOR] ) {
$realip = $_SERVER["HTTP_X_FORWARDED_FOR"];
} elseif ( $_SERVER["HTTP_CLIENT_IP"] ) {
$realip = $_SERVER["HTTP_CLIENT_IP"];
} else {
$realip = $_SERVER["REMOTE_ADDR"];
}
} else {
if ( getenv( "HTTP_X_FORWARDED_FOR" ) ) {
$realip = getenv( "HTTP_X_FORWARDED_FOR" );
} elseif ( getenv( "HTTP_CLIENT_IP" ) ) {
$realip = getenv( "HTTP_CLIENT_IP" );
} else {
$realip = getenv( "REMOTE_ADDR" );
}
}
$fecha = date("j / n / Y");
$hora = date("h:i:s");
$segundos = time();
$can = "3600";
$resta = $segundos-$can;
//se asignan la variables
$sql = "SELECT segundos, IP ";
$sql.= "FROM contador WHERE segundos >= $resta AND IP LIKE '$realip' ";
$es = mysql_query($sql, $conn) or die("Error al leer base de datos: ".mysql_error);
//se buscan los registros que num de seg mayor a num de seg hace una hora e IP
if(mysql_num_rows($es)>0)
{//no se cuenta la visita
}
else
{
$sql = "INSERT INTO contador (id, IP, fecha, hora, segundos) ";
$sql.= "VALUES ('','$realip','$fecha','$hora','$segundos')";
$es = mysql_query($sql, $conn) or die("Error al grabar un mensaje: ".mysql_error);
}
//creamos el condicionamiendo para loguearlo o no.
$sql = "SELECT * ";
$sql.= "FROM contador WHERE id ";
$es = mysql_query($sql, $conn) or die("Error al leer base de datos: ".mysql_error);
$visitas = mysql_num_rows($es);
$men=$men .
"<table width='6%' border='0' height='25' bgcolor='#000000'>" . chr(10);
$men=$men . "<tr>" . chr(10);
$men=$men . "<td><font color=#000000>Visitas:$visitas</font></td>" . chr(10);
$men=$men .
"</tr>" . chr(10);
$men=$men . "</table>" . chr(10);
?>