PHP Mantemento do estado
Introdución
- O punto de partida é un usuario que dende a súa casa escriba na URL do seu navegador web: http://moodle.cifprodolfoucha.es
- Nese intre sucede o seguinte:
- O computador 'traduce' a dirección moodle.cifprodolfoucha.es a unha dirección en Internet. Dita dirección se identifica por 4 grupos de números separados por punto (por exemplo 217.160.230.68). Dita labor a fan os servidores DNS.
- Con esa dirección (é un computador en Internet) o navegador fai unha petición de obter unha páxina web e manda esa petición a través dos router´s ata chegar ao computador destino.
- Nese computador destino recíbese a petición nun porto determinado (o tráfico web vai ao porto 80 por defecto). Nese porto se atopa 'escoitando' un proceso (no noso caso dito proceso é xestionado por un servidor web, apache).
- O servidor identifica:
- IP do computador orixe.
- A url que envía xunta coa páxina a cargar (moodle.cifprodolfoucha.es => neste caso non se envía páxina, pero o servidor web vai cargar unha páxina por defecto, normalmente index.php).
- O servidor web está configurado para asociar a dirección (moodle.cifprodolfoucha.es) a un cartafol do seu disco duro (no caso de apache dito servidor é /var/www/html).
- Fixarse que un servidor web pode dar servizo a máis dun sitio web e polo tanto vai poder recibir solicitudes de máis dun sitio.
- Busca nese cartafol a páxina solicitada. Se é unha páxina php 'executa' previamente o código php que ai no seu interior e o xunta ao código html.
- O computador envía de volta ao cliente a páxina solicitada có código html máis o código php xerado.
- Na programación PHP cada vez que o usuario 'iteraciona' coa páxina prodúcese unha operación de 'carga' da páxina. É dicir, faise unha petición ao servidor web para que procese a acción do usuario (por exemplo cando prememos nun enlace).
- Isto leva consigo a necesidade de buscar mecanismos que nos permitan gardar os datos do usuario (normalmente datos que imos recollendo por medio de formularios) entre chamadas a páxinas.
- O protocolo HTTP é un protocolo sen estado (en inglés stateless). O que supón é que cada petición que fagamos a un servidor web en busca dunha páxina vai ser independente da chamada anterior. Cando un cliente solicita unha páxina o servidor web envía os datos da mesma e esquece todo sobre o cliente e a petición.
- Imaxinemos que un cliente carga unha páxina na que escolle que quere ver só os produtos relacionados coa informática. Se o mesmo cliente carga outras páxinas nas que poden visualizarse produtos doutro tipo, o servidor web non ten forma de saber que dito cliente fixo unha selección previa sobre los tipos de produtos a visualizar e amosará todos.
- Dispoñemos de varios mecanismos para poder gardar información entre páxinas:
- Uso de información embebida en URL´s (método GET)
- Uso de campos ocultos nun formulario (método POST)
- Sesións (especifico de PHP)
- Cookies
-- Ángel D. Fernández González -- (2016).