problema al almacenar ip para bloquear acceso
Publicado por joseph (15 intervenciones) el 31/10/2016 02:11:28
por que no funciona como debería funcionar mi script?
Estoy intentando almacenar la ip del visitante para que solo puedan entrar una ves a un sitio, logro que me almacene la ip y lo bloquea solo si la persona entra de forma seguida después de haberse guardado la ip.
Ejemplo: si mi ip es= 11.22.33.44
la guardo como=11223344 sin los puntos
Primero busco en el txt que no este la ip, si la ip esta bloqueo el acceso, si no esta la guardo.
si entro dos veces seguidas efectivamente me bloquea el acceso, pero si entro después entro con otra ip, y vuelvo a entrar con mi ip, no me bloquea y me vuelve a guardar mi ip quedando así el archivo ips.txt:
11223344
55667788
11223344
si vuelvo a ingresar con mi ip efectivamente bloquea y no la guarda, pero si lo hago con tar y de nuevo la mía, la guarda
alguien sabe cual será el problema?
Estoy intentando almacenar la ip del visitante para que solo puedan entrar una ves a un sitio, logro que me almacene la ip y lo bloquea solo si la persona entra de forma seguida después de haberse guardado la ip.
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
<?php
$ip=get_ip();
if(listanegra(str_replace(".","",$ip))==true){
echo "BLOQUEADO";
exit();
}
echo "siga";
function listanegra($ip){
$ips=file("ips.txt");
$xx=0;
while ($xx<=count($ips)){
if($ips[$xx]==$ip){
return true;
}
$xx++;
}
$file=fopen("ips.txt","a");
fwrite($file,PHP_EOL.$ip);
fclose($file);
return false;
}
function get_ip(){
return $_SERVER["REMOTE_ADDR"];}
?>
Ejemplo: si mi ip es= 11.22.33.44
la guardo como=11223344 sin los puntos
Primero busco en el txt que no este la ip, si la ip esta bloqueo el acceso, si no esta la guardo.
si entro dos veces seguidas efectivamente me bloquea el acceso, pero si entro después entro con otra ip, y vuelvo a entrar con mi ip, no me bloquea y me vuelve a guardar mi ip quedando así el archivo ips.txt:
11223344
55667788
11223344
si vuelvo a ingresar con mi ip efectivamente bloquea y no la guarda, pero si lo hago con tar y de nuevo la mía, la guarda
alguien sabe cual será el problema?
Valora esta pregunta


0