Contador de visitas modificar el tiempo
Publicado por Unexes (124 intervenciones) el 12/04/2015 14:29:27
Hola veréis tengo este código que funciona bien pero tengo un problema que no se solucionar y es el siguiente.
Me registra la visita de una misma IP una vez trascurridas 5 horas y lo que necesito es que me lo registre pasados 15 minutos y no he conseguido hacerlo, al final pongo lo que he intentado y no funciona, a ver si me podéis ayudar, gracias. .
Lo que he intentado es sustituir las lineas:
por estas otras pero no me funciona:
me podéis ayudar, Gracias
Me registra la visita de una misma IP una vez trascurridas 5 horas y lo que necesito es que me lo registre pasados 15 minutos y no he conseguido hacerlo, al final pongo lo que he intentado y no funciona, a ver si me podéis ayudar, gracias. .
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?php
include('conf.php');
$ip = $_SERVER['REMOTE_ADDR'];
$sql="select ip, TIMEDIFF(NOW(), fecha), fecha, num_visitas from contador where ip='$ip'";
$rs=mysql_query($sql) or die("Problemas al ejecutar select SQL ".mysql_error());
$fila=mysql_fetch_array($rs);
$tiempo=$fila[1]; //Diferencia entre fecha guardada y fecha actual
$num_visitas=$fila[3]; //Número de visitas
$horas_t=substr($tiempo,0,2); //Número de horas transcurridas
$tiemRes = 5; //Varible de tiempo en horas para restringir la visita
if (mysql_num_rows($rs)==0)
{
$sql="insert into contador(ip, num_visitas, fecha) values('$ip', 1, NOW())";
mysql_query($sql) or die("Problemas al ejecutar la insert SQL ".mysql_error());
}
//Si la ip existe y han transcurrido 5hrs
elseif (mysql_num_rows($rs) > 0 && $horas_t > $tiemRes)
{
$sql="update contador set fecha=NOW(), num_visitas=’$num_visitas’+1 where ip=’$ip’";
mysql_query($sql) or die("Problemas al ejecutar update SQL ".mysql_error());
}
$sql="select SUM(num_visitas) from contador";
$rs=mysql_query($sql) or die("Problemas al ejecutar select SQL ".mysql_error());
$fila=mysql_fetch_array($rs);
$num_visitas=$fila[0];
mysql_close($link);
?>
Lo que he intentado es sustituir las lineas:
1
2
3
4
$horas_t=substr($tiempo,0,2); //Número de horas transcurridas
$tiemRes = 5; //Varible de tiempo en horas para restringir la visita
elseif (mysql_num_rows($rs) > 0 && $horas_t > $tiemRes)
1
2
3
4
$minutos_t=substr($tiempo,4,2); //Número de minutos transcurridos
$tiemRes = 15; //Varible de tiempo en minutos para restringir la visita
elseif (mysql_num_rows($rs) > 0 && $minutos_t > $tiemRes)
me podéis ayudar, Gracias
Valora esta pregunta


0