PHP

Ξ 18 comentarios

Cómo validar una URL en PHP

por Xabadu
Cómo validar una URL en PHP

Continuando con nuestros innumerables nunca bien ponderados tutoriales de PHP, hoy les traemos una sencilla lección en la que veremos como realizar verificaciones de URL mediante la creación de una función bastante simple.

Este proceso es muy útil para distintos procesos que queramos instruir en nuestros sitios Web. Desde formularios de registro, hasta creaciones de enlaces sugeridos por usuarios, son muchos los usos que le podremos dar al código enseñado en este tutorial.

El detalle de todo, como siempre, después del salto.

Cómo validar una URL en PHP

Como siempre, lo primero:

Implementos necesarios:

  1. Un editor Web o un entorno de programación en PHP (como siempre, utilizamos y recomendamos Adobe Dreamweaver).
  2. Un alojamiento Web, o servidor, que soporte y ejecute archivos en PHP (versiones 4.x.x y superiores no deberían presentar problemas)

Con eso claro, vamos, manos a la obra:

Procedimiento:

El ejemplo lo ilustraremos de una forma bastante sencilla. Crearemos un pequeño formulario, el cual contendrá un campo de texto para ingresar la URL a verificar y un botón para enviar los datos. Cuando se envíen, ejecutaremos una función definida que se encargará de abrir la URL en modo de lectura y ver si en realidad existe. Así que vamos:

1.- Lo primero que haremos será construir un formulario en nuestra página, el cual contendrá un campo de texto al cual llamaremos “url” (sin comillas) y lo dejaremos de un largo de 100 (en caso de que sean URLs muy largas). En caso de que tengan problemas creando este formulario, les aconsejo visitar este tutorial donde hemos cubierto el proceso detalladamente. El action del formulario lo dejaremos a la misma pagina que estamos creando (por ej. validacion.php) y el method en POST.

2.- A continuación, utilizaremos el siguiente código, todos los comentarios, como siempre, en negrita, cursiva y entre /* y */ :

 El titulo que quieran

Y con ese sencillo código hemos realizado una operación de validación de URL. La verdad es que el proceso en sí es bastante simple, a pesar de que se puede modificar este código para hacerlo mucho más completo, lo cual es la idea y los incentivamos para que puedan realizar integraciones con otras funcionalidades de sus sitios Web. Por ahora la idea es entender de manera correcta el funcionamiento y llevarlo a cabo.

Como siempre, este tutorial ha sido:

Cualquier duda o comentario, pueden dejarnos unas líneas en el área habilitada a continuación.

Esperamos que este tutorial haya sido de utilidad para Uds.

Muchas gracias por leer y será hasta una próxima oportunidad.

Comparte este tutorial

El culpable de todo esto

Las tardes gloriosas de domingo y las grandes ovaciones a estadio lleno, no son algo extraño para Xabadu. Luego de ser descubierto a los 4 años en un partido de barrio por los ojeadores del gran Aviación F.C., sacudió el mercado nacional al ser traspasado en $500 pesos chilenos (1 USD) y 3 coca colas al renombrado Estrella Blanca de Lolol. Luego de una impresionante carrera por equipos como Lozapenco, Santa Cruz, Deportivo Lago Chungará y una incursión en la 3a división del futbol de Kazajstan, su record imbatible hasta la fecha de 1257 goles en 20 partidos lo llevo a ser elegido como uno de los arqueros más recordados en la historia pelotera nacional. Una lesión en el colmillo superior derecho lo llevó al retiro el año 2003, pero está de vuelta y sin duda que su jerarquía y experiencia internacional será un gran aporte.

En los barrios marginales se le conoce como: Xabadu

Comentarios en Facebook

18 Comentarios

  • buen tutorial, pero podrían enseñar como dejar URL dinámicas en URL estáticas

    para que se vea más ordenado o nose.. un método pata ocultar las carpetas dentro de tu server, más que nada por un tema de una URL mas simple , sencilla

    eso

    saludos!

  • Buen tutorial @Juan, a mi también me gustaría saber como @Trilamo como enmascarar la url. Se puede?

  • @Trilamo y @Goten: Tomaremos en consideración su solicitud para preparar algo al respecto.

    Saludos y gracias por sus comentarios.

  • hola
    muy interesante
    quisiera saber como se podria validar una url de una imagen

  • ¿No deberia estar el close antes que el return?
    Nunca cerrará el archivo, y no disposará recursos.

  • Validar URL
     
    $regex = “((https?|ftp)\:\/\/)?”; // SCHEME
    $regex .= “([a-z0-9+!*(),;?&=\$_.-]+(\:[a-z0-9+!*(),;?&=\$_.-]+)?@)?”; // User and Pass
    $regex .= “([a-z0-9-.]*)\.([a-z]{2,3})”; // Host or IP
    $regex .= “(\:[0-9]{2,5})?”; // Port
    $regex .= “(\/([a-z0-9+\$_-]\.?)+)*\/?”; // Path
    $regex .= “(\?[a-z+&\$_.-][a-z0-9;:@&%=+\/\$_.-]*)?”; // GET Query
    $regex .= “(#[a-z_.-][a-z0-9+\$_.-]*)?”; // Anchor

    if (preg_match(“/^$regex$/”, $url))
    return true;
    else
    return false;

  • Es preferible validar con expresiones regulares, en vez de hacer trabajar tanto al servidor.

  • Y con fopen ¿no compremetemos la seguridad de nuestra web? me decanto por expresiones regulares.

  • tengo una duda con el fopen
    Estoy validando unas URL de Youtube con el código de video:

    Al ejecutar de manera local, en mi PC, me valida de forma correcta cual video existe y cual no…

    Pero al subir el código al Servidor de mi Hosting, todo lo valida como correcto, descubri que es por que Youtube tiene sus página 404 funcionando, pero ¿por que de forma local funciona?

    Pense que era el php.ini que estaba con allow_url_fopen=Off pero me enviaron un pantallazo de phpinfo() y esta en ON…

    Alguien sabe que puede ser?
    Gracias…

  • Hola amig@s, interesante artículo. Aprovecho que paso por aquí para adjuntaros un artículo que explica cómo hacer esto gracias a Zend, con sólo una línea de código.

    http://programarivm.com/2012/03/valida-un-uri-con-zend-framework-en-cuestion-de-segundos/

    ¡Gracias y saludos!

1 2

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Gente linda que nos quiere

Donde mas estamos