Como todas las semanas, aquí os traemos un nuevo volumen de nuestro particular Curso de PHP Online, así que vamos a por ello.
Hoy nos toca abordar dos temas , ya que el primero, es bastante corto y simple de explicar, y el volumen se quedaría un poco pequeño, el segundo tiene un poco mas de miga, y aunque no lo toquemos muy profundamente servirá para hacernos una idea y que podáis seguir indagando vosotros mismos si lo deseáis.
Antes de empezar, recordaros a todos que tenéis en este enlace el índice del curso, por si alguno quiere encontrar un volumen pasado, o por si alguien acaba de empezar a seguir el curso y quiere ponerse al día.
Una vez dicho esto vamos con lo que nos ocupa, vamos a empezar por tratamiento de archivos remotos.
Archivos remotos
PHP nos da la oportunidad (siempre que este configurado para ello, y en nuestra versión por defecto lo está, ya que lleva desactivada la opción –disable-url-fopen-wrapper y el allow_url_fopen en ON) de abrir URLs HTML y FTP como si fuesen ficheros, es decir operando con ellas con las funciones que hasta ahora habíamos visto para ficheros.
Vamos a ver como leer una URL y mostrarla entera, por ejemplo www.redeszone.net :
Código 1
Nota: Como veis el flag de modo de apertura es R, read.
En el caso de FTP, habría que identificarse con un usuario y contraseña y abrir la URL del FTP con el flag W, luego escribir el archivo, siempre que este no exista ya. Ya que no se nos da la posibilidad de modificar/sobrescribir solo de crear un fichero.
Ejemplo de url valida(según el manual oficial de PHP):
ftp://user:password@ftp.example.com/path/to/file
Autentificación en PHP
Con PHP también podemos realizar autentificaciones para ciertas partes de nuestro sitio web (esta parte esta orientada a programación web con PHP).
Como hemos dicho mas arriba, este tema lo vamos a tocar un poco por encima para que podáis profundizar si lo deseáis por vuestra cuenta, y si lo hacéis no tengáis ningún problema partiendo de esta base.
En este apartado vamos a ver la autentificación HTTP Basic (podéis encontrar mucha información en internet sobre ella, pero básicamente se trata de un servicio de autentificación basado en nombre y contraseña).
Nosotros para este ejemplo/explicación vamos a meter las credenciales en una cadena de texto, aunque realmente suelen estar en archivos externos,archivos de apache (si se hace vía Apache) o en bases de datos. Lo hacemos así porque no vamos a hablar de como implementar la autentificación vía Apache, y porque si residieran en archivos externos, sabemos como leerlos. En cuanto a bases de datos no hemos visto nada…aún.
Vamos con ello:
Código 2
Nota: Como siempre que hablamos algo de seguridad, recordaos que como esto es un ejemplo, tiene bastantes deficiencias y sería necesario mejorarlo. De hecho no es muy recomendable hacer implementaciones de autentificación de esta manera.
Volveremos el miércoles que viene con nuevos contenidos de PHP, esperadnos!