Foros del Web » Programando para Internet » PHP »

Limitar Acceso Por IP

Estas en el tema de Limitar Acceso Por IP en el foro de PHP en Foros del Web. Quisiera saber como puedo limitar el acceso por ip hacia una referida pagina en php, por ejemplo, quiero que por ip puedan ejecutar maximo 10 ...
  #1 (permalink)  
Antiguo 14/11/2007, 21:09
 
Fecha de Ingreso: octubre-2006
Mensajes: 39
Antigüedad: 17 años, 6 meses
Puntos: 0
Limitar Acceso Por IP

Quisiera saber como puedo limitar el acceso por ip hacia una referida pagina en php, por ejemplo, quiero que por ip puedan ejecutar maximo 10 veces esa pagina. existe algun codigo o se puede hacer desde el apache ?, por favor ayudenme.
  #2 (permalink)  
Antiguo 14/11/2007, 21:31
Avatar de jimi  
Fecha de Ingreso: mayo-2006
Ubicación: La Plata, Bs As, Argentina
Mensajes: 60
Antigüedad: 17 años, 11 meses
Puntos: 0
Re: Limitar Acceso Por IP

Hola, a ver si te puedo ayudar..

yo lo que haria, es guardarme la ip, en la bd.. al comienzo del script php, consulto a la bd cuantos accesos tengo para la ip y url dada, y si es mayor que 10, lo redirecciono, o algo similar..

no se si por ese lado ibas...
  #3 (permalink)  
Antiguo 14/11/2007, 21:35
 
Fecha de Ingreso: octubre-2006
Mensajes: 39
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: Limitar Acceso Por IP

Cita:
Iniciado por jimi Ver Mensaje
Hola, a ver si te puedo ayudar..

yo lo que haria, es guardarme la ip, en la bd.. al comienzo del script php, consulto a la bd cuantos accesos tengo para la ip y url dada, y si es mayor que 10, lo redirecciono, o algo similar..

no se si por ese lado ibas...
Hay algun code o un script que me ayude en eso ?.
  #4 (permalink)  
Antiguo 14/11/2007, 22:18
Avatar de andruqui  
Fecha de Ingreso: agosto-2007
Mensajes: 269
Antigüedad: 16 años, 8 meses
Puntos: 2
Re: Limitar Acceso Por IP

Seria algo asi al principio de los scripts

Código PHP:
$ip_cliente $_SERVER['REMOTE_ADDR'];

$consulta "select count(*) as cantidad from tabla where ip = $ip_cliente";
//haces la consulta

if ($cantidad 10 ) {
    
header('Location:http://www.andruqui.com');
    die();

Si lo queres hacer distinguiendo por cada php, agregale a la consulta en el where "AND script = $_SERVER['PHP_SELF']"


Saludos
Andres
  #5 (permalink)  
Antiguo 15/11/2007, 01:44
 
Fecha de Ingreso: octubre-2006
Mensajes: 39
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: Limitar Acceso Por IP

Me Quedo Asi, pero no me funciona:

Código PHP:
<?php
$host
="localhost";
$user="user";
$password="pass";

$link mysql_connect ($host$user$password) or die ("<center>No se puede conectar con la base de datos\n</center>\n");

if (!
mysql_select_db("db_name",$link))

$ip_cliente $_SERVER['REMOTE_ADDR'];

$consulta "select count(*) as cantidad from current_users where ip = $ip_cliente";
mysql_query($consulta);

if (
$cantidad 10 ) {
    
header('Location:http://www.atebusca.com');
    die();
}
?>
Las ip se guardan en la tabla current_users., pero igual aun que puse el codigo la web sigue cargando como si no hubiera puesto nada.

La ip se guarda una sola vez por visita, osea, puedo entrar 100 veces a la pagina, pero en la base de datos solo se guarda 1 ip.
  #6 (permalink)  
Antiguo 15/11/2007, 06:47
Avatar de andruqui  
Fecha de Ingreso: agosto-2007
Mensajes: 269
Antigüedad: 16 años, 8 meses
Puntos: 2
Re: Limitar Acceso Por IP

El codigo que puse era ilustrativo y no exacto.
En tu codigo la variable $cantidad nunca es > 10 porque nunca nadie le da un valor.

Deberias comparar el resultado de la consulta en ese if.

Saludos
Andres
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 09:26.