Ok, te pondré un ejemplo sencillo sin utilizar Cookies o Sessiones, Pero recuerda, que si el usuario tiene una IP dinámica (como es de costumbre) se creara otro registro como un usuario diferente. Este es el Código:
Código PHP:
<?php
$conexion = mysql_connect('host','usuario','contraseña');
mysql_select_db('base_datos',$conexion);
$sql = "SELECT * FROM Tabla WHERE IP ='".$_SERVER['REMOTE_ADDR']."'";
$query = mysql_query($sql) or die ('error al extraer datos. ' . mysql_error());
if(!$exite=mysql_num_rows($query)) {
$sql2 = "INSERT INTO Tabla (IP,fecha,hora...) VALUES ('".$_SERVER['REMOTE_ADDR']."',...)";///terminas tu el query segun lo quieras para el insert
} else {
$sql2 = "UPDATE Tabla SET IP = '".$_SERVER['REMOTE_ADDR']."', fecha =..."; //terminas tu el query segun lo quieras para el update
}
mysql_query($sql2) or die('Error al procesar el usuario por:' . mysq_error());
?>