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.
Como siempre, lo primero:
Con eso claro, vamos, manos a la obra:
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.
10:33:13 am
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!
12:53:55 pm
Buen tutorial @Juan, a mi también me gustaría saber como @Trilamo como enmascarar la url. Se puede?
2:37:24 pm
@Trilamo y @Goten: Tomaremos en consideración su solicitud para preparar algo al respecto.
Saludos y gracias por sus comentarios.
4:49:02 pm
hola
muy interesante
quisiera saber como se podria validar una url de una imagen
1:21:32 pm
¿No deberia estar el close antes que el return?
Nunca cerrará el archivo, y no disposará recursos.
12:47:14 pm
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;
10:39:56 am
Es preferible validar con expresiones regulares, en vez de hacer trabajar tanto al servidor.
4:08:20 am
Y con fopen ¿no compremetemos la seguridad de nuestra web? me decanto por expresiones regulares.
11:09:52 pm
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…
9:13:38 am
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!