Introducción a HTML, XHTML, HTTP y PHP
HTML
**HTML** (HyperText Markup Language) es un lenguaje basado en etiquetas o tags. La sintaxis de este lenguaje tiene varias reglas:
- Se escribe con estructura tree o de árbol (ver imagen)
- Todo tag debe cerrar:
<a>texto</a>
- Los tags deben cerrar en orden inverso al que fueron abiertos:
<p>texto</p>
- Los tags pueden contener atributos:
<tag atributo="valor">
- Debe haber una raíz obligatoria. Esto significa que tiene que existir un tag que encierre al resto:
<html>
XHTML
**XHTML** es la evolución del HTML en un lenguaje mucho más estricto. Esta evolución se debe principalmente a la diferencia entre los navegadores. Los navegadores no son más que intérpretes de código. Por ejemplo, antes se podía poner <body>texto</body>
. Con XHTML estricto el texto debe ir siempre dentro de una etiqueta de párrafo: <body><p>texto</p></body>
. Existe un XHTML transicional que admite algunos errores de este tipo, sin embargo el XHTML no, y directamente no valida los archivos con errores.
HTTP
**HTTP** (HyperText Transfer Protocol) es el protocolo desarrollado por el World Wide Web Consortium (W3C) para la transferencia de archivos en la World Wide Web.
PHP
El lenguaje **PHP** es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación con variables, sentencias condicionales, bucles, funciones…. No es un lenguaje de marcas como podría ser HTML, XML o WML. Está mas cercano a JavaScript o a C, para aquellos que conocen estos lenguajes.
PHP se ejecuta en el servidor, por eso nos permite acceder a los recursos que tenga el servidor como por ejemplo podría ser una base de datos.
Al ser PHP un lenguaje que se ejecuta en el servidor no es necesario que su navegador lo soporte, es independiente del navegador, pero sin embargo para que sus páginas PHP funcionen, el servidor donde están alojadas debe soportar PHP. Para incluir código PHP basta con precederlo de la etiqueta <?php>
Si el servidor web está correctamente configurado, detectará código PHP y, en vez de proporcionarle el contenido de la página directamente al cliente (lo que significaría que recibiría el código fuente del programa), ejecuta el programa y devuelve su resultado al navegador.