Publicentral.com - promocion de paginas webpromocion de paginas web
Mostrando Codigo - Php
Code

Php - Restringir acceso mediante ip con archivo de texto

Códigos Php

Con este sencillo codigo restringimos el acceso a las paginas mediante la direccion ip. No utiliza base de datos, simplemente un sarchivo de texto
Visitas: 28,195 - 21/09/2003 22.12.03
CODIGO SIN DEMOSTRACIONNO CONTIENE ARCHIVO DESCARGABLEComentario
EXPLICACION
Debemos crear un archivo de texto, que en este caso lo llamamos expulsados.txt Este script lo insertaremos en todas las paginas a las que queramos restringir el acceso, mediante include < include('expulsados.php'); > para hacerlo con base de datos Msql http://www.tutores.org/tutores/code/descripcion.asp?ScriptID=572&id=2
CODIGO
Codigo probado en ChromeCodigo probado en Mozilla FirefoxCodigo probado en Internet Explorer 7+Codigo probado en OperaCodigo probado en Safari


// Codigo ofrecido por Tutores.org

  1. <?php
  2. if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
  3. $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
  4. }
  5. elseif (isset($_SERVER['HTTP_VIA'])) {
  6. $ip = $_SERVER['HTTP_VIA'];
  7. }
  8. elseif (isset($_SERVER['REMOTE_ADDR'])) {
  9. $ip = $_SERVER['REMOTE_ADDR'];
  10. }
  11. else {
  12. $ip = "Desconocida";
  13. }
  14.  
  15. $baneados = file("expulsados.txt", "r+");
  16. $nbaneados = count($baneados);
  17. function banear($ip,$baneados,$nbaneados){
  18. for ($i = 0 ; $i < $nbaneados ; $i++){
  19. if ($ip==$baneados[$i]){
  20. echo "<center> No esta autorizado a visitar esta pagina !</center>";
  21. die();
  22. }
  23. }
  24. }
  25. banear($ip,$baneados,$nbaneados);
  26. ?>



ENLACE AL CODIGO
Si quieres enlazar desde tu pagina a este codigo
<!-- Inicio enlace Tutores.org -->
<a title="Tutores.org - Restringir acceso mediante ip con archivo de texto" href="http://www.tutores.org/codigo/571/" target="_blank">Restringir acceso mediante ip con archivo de texto</a>
<!-- Final enlace Tutores.org -->
COMENTARIOS
Comentario usuario
Lecho
2 5
no me funciona el codigo, me sale este error.
Warning: file() expects parameter 2 to be long, string given in /home/nor7on/public_html/bnc/baneados.php on line 14

le puse un @ al file quedando así: @file y ahora no me da error, pero no me banea de la página.
Comentario usuario
19/08/2004 21.24.58
3 5
Hola buen día amigos

Les agradezco por compartir un poco de su conocimiento, en mi caso el código si funciona pero con una excepción, en el archivo expulsados.txt me permite anexar solo una IP al anexar mas de una permite la entrada a la Web.

Ejemplo:
expulsados.txt conteniendo solo una IP 199.235.5.203 niega el ingreso a la página, que es correcto es a lo que vamos.

Pero si anexo mas IP
Ejemplo:
expulsados.txt conteniendo varias ip
199.235.5.203
199.235.5.204
199.235.5.205
199.235.5.206
199.235.5.207
Admite el ingreso a la página.

Mi pregunta es ¿como negar el acceso a varias IP?

Les agradezco de antemano
INSERTAR COMENTARIO

Usuario:
Email:
Comentario:
Codigo Seguridad


Antes de enviar un comentario...
Todos los comentarios son revisados personalmente
Todo comentario que no haga relacion al codigo mostrado en esta pagina sera eliminado

Usuarios registrados tienen preferencia en recibir respuestas de ayuda!!
Ademas de poder insertar Imagenes,Enlaces y otras propiedades del editor.
Por favor, insertar los comentarios descriptivos.