
22/06/2010, 14:36
|
| | Fecha de Ingreso: mayo-2008
Mensajes: 287
Antigüedad: 16 años, 11 meses Puntos: 2 | |
banneo de ip buenas.
estoy programando un pequeño script para banner las ip por tiempo. por ejemplo el usuario ingresa si despues quiere ingresar de nuevo tiene que esperar 5 minutos.
ya casi lo tengo listo solo que tengo un problema el codigo es el sig
<?php
include("config.php") ;
$hora= date ( "h:i:s:a"); // declaramos la hora
$ip = $_SERVER[REMOTE_ADDR] ;
$con = mysql_query("select ip,horainicio,horafin from usuarios") ;
$datos = mysql_fetch_assoc($con) ;
if($datos[ip] == $ip)
{
if($datos[horafin] > $hora)
{
echo"no puedes ingresar espera 5 minutos " ;
}
elseif($datos[horafin] < $hora)
{
echo" ya puedes ingresar " ;
mysql_query("delete from usuarios where ip='$ip'") ;
}
}
else
{
$horainicio= date ( "h:i:s:a"); // declaramos la hora
list($hora1, $minut) = split('[:]', $horainicio);
$horafin=date("H:i", mktime($hora1, $minut+5 , 0));
echo "informacion del modulo" ;
mysql_query("insert into usuarios (ip,horainicio,horafin) values ('$ip','$horainicio','$horafin')");
}
?>
bueno si la ip existe ahora comparo la hora final con la actual si no cumple todavia los 5 minutos no lo deja pasar, pero si ya cumplio los 5 minutos eliminio la ip. de lo contrario si la ip no existe almaceno la ip pero muestro la info del modulo.
lo que quiero solucionar esque si ya pasaron los 5 minutos elimine la ip "para dejar pasar el usuario"
y muestre el contenido del modulo y asi tambien de nuevo almacene la ip "para actualizar"
creo que el problema es el if por que si ya pasaron los 5 minutos el usuario ingresa, pero tiene que re ingresar
de nuevo para que le muestre el contenido y ese es el problema que quiero solucionar pero no se como |