PDF de programación - Generación de web sites dinámicos usando PHP

Imágen de pdf Generación de web sites dinámicos usando PHP

Generación de web sites dinámicos usando PHPgráfica de visualizaciones

Publicado el 3 de Febrero del 2017
1.903 visualizaciones desde el 3 de Febrero del 2017
976,2 KB
114 paginas
Creado hace 17a (18/01/2007)
Generación de web sites dinámicos usando PHP.

Introducción:
Funcionamiento de un Web Site:

El funcionamiento de un Web-Site es un ejemplo típico de la arquitectura cliente-servidor, en donde
múltiples clientes se conectan a un servidor (en algunos casos varios) en forma simultanea. En general el
servidor depende de la instalación del site mientras que el cliente suele ser un browser, en general Netscape
Navigator o Microsoft Explorer. Como en todo esquema cliente-servidor debe existir un protocolo que
especifique de que forma se comunican e intercambian datos el cliente y el servidor, el protocolo utilizado en
un web site es el protocolo HTTP que funciona “encapsulado” sobre el protocolo TCP/IP.

Introducción al Protocolo HTTP:

Básicamente el protocolo es iniciado por el cliente con un “request”, es decir un pedido de un recurso
determinado, que es casi siempre contestado por el server con el envío de una respuesta (“response”) que
incluye un código indicando si el pedido pudo ser resuelto por el server o no.

Un request genérico tiene la forma:

URI

PROTOCOLO CrLf

METODO
HEADERS*
CrLf
Datos

El MÉTODO en general puede ser GET o POST
URI es el identificador del recurso que se desea pedir, el formato es: http://host:port/path?query_string
PROTOCOLO debe ser HTTP / 1.1
CrLf es un Carriage Return seguido de un New Line (0x13,0x10)
Headers son de tipo: Header-Name: Value CrLf, y pueden indicar varias cosas.

Un ejemplo de pedido es:
GET http://www.yahoo.com HTTP/1.1

El server responde con una RESPUESTA de la forma:

PROTOCOLO STATUS
Headers*
Content-Type: TIPO CrLf
CrLf
Datos

VALOR CrLF

Un ejemplo de respuesta de un server podría ser:

HTTP/1.1 200 OK
Date: Mon, 12 Jun 2000 14:04:28 GMT
Server: Apache/1.3.9 (Unix) ApacheJServ/1.1
Connection: close
Content-Type: text/html

Datos…..

Generación de web sites dinámicos usando PHP.

Los datos que el server envía al browser dependen del “Content-Type” declarado, básicamente los tipos más
usados son texto plano (text/plain), código html (text/html), o imágenes (image/gif u otros).

De esta forma el cliente y el server se comunican por medio de tantos ciclos REQUEST-RESPONSE como
sean necesarios, es de destacar que por cada REQUEST se debe iniciar una conexión nueva entre el cliente y
el servidor ya que el protocolo HTTP en su forma básica no admite que en una misma conexión se haga más
de un pedido al server. En una página html simple con 3 imágenes por ejemplo es normal que se efectúen 4
conexiones al server: una para la página y luego una por cada imagen.

Ejemplo:

Supongamos que tenemos la siguiente página html en un servidor, supongamos que la dirección del servidor
es www.prueba.com y que la página se llama index.html, el ciclo que se da entre el browser y el server es de
La forma:

<HTML>
<HEAD>
<TITLE>Ejemplo</TITLE>
</HEAD>
<BODY>
Hola esta es una prueba
<IMG SRC=”prueba.gif”>
</BODY>
</HTML>

Generación de web sites dinámicos usando PHP.

Comunicación Browser-Server
BROWSER
GET http://www.prueba.com/index.html HTTP / 1.1 HTTP/1.1 200 OK

SERVER

Date: Tue, 13 Jun 2000 14:15:45 GMT
Server: Apache/1.3.9 (Unix) PHP/4.0.0
Last-Modified: Tue, 13 Jun 2000 14:09:05 GMT
ETag: "5804d-73-39464081"
Accept-Ranges: bytes
Content-Length: 115
Connection: close
Content-Type: text/html

GET http://www.prueba.com/prueba.gif HTTP / 1.1

<HTML>
<HEAD>
<TITLE>Ejemplo</TITLE>
</HEAD>
<BODY>
Hola esta es una prueba
<IMG SRC="prueba.gif">
</BODY>
</HTML>

HTTP/1.1 200 OK
Date: Tue, 13 Jun 2000 14:18:22 GMT
Server: Apache/1.3.9 (Unix) PHP/4.0.0
Last-Modified: Tue, 13 Jun 2000 14:07:36 GMT
ETag: "5804e-2b2-39464028"
Accept-Ranges: bytes
Content-Length: 690
Connection: close
Content-Type: image/gif

GIF89aGÕÿ11B99ZRJkcRœk½Î½„Ƶ{µ„{ZÖÆŒï
ÞœçÖ”{sRskJ„{RkcBœ”k¥{sJµ
(CORTADO)

Luego el browser es responsable de interpretar y mostrar en la pantalla el código html y la imagen que
recibió del servidor.

Generación de web sites dinámicos usando PHP.

Tecnologías disponibles para el desarrollo de aplicaciones:

Para desarrollar aplicaciones y dotar a las páginas web de funcionalidad se puede trabajar tanto en el lado
del cliente como en el lado del servidor, las variantes son:

Programación en el cliente:

• El browser envía un request.
• El server envía un response que contiene código que el browser entiende.
• El browser interpreta el código enviado por el server y realiza una determinada acción.

Programación en el servidor:

• El browser envía un request.
• El server ejecuta una aplicación que realiza una determinada acción.
• El server envía el resultado de dicha aplicación al cliente.
• El browser muestra el resultado recibido del server.

Esquema mixto: (programación en el cliente y en el servidor)

• El browser envía un request.
• El server ejecuta una aplicación que realiza una determinada acción.
• El server envía el resultado de dicha aplicación al cliente conteniendo código a interpretar por el browser.
• El browser interpreta el código enviado por el server y realiza una determinada acción.

La programación del lado del cliente tiene como principal ventaja que la ejecución de la aplicación se delega
al cliente, con lo cual se evita recargar al servidor de trabajo. El servidor sólo envía el código, y es tarea del
browser interpretarlo. La gran desventaja de esta metodología es que el código que el server envía es
“sensible” a que cosas puede o no hacer el browser. El usuario puede, por ejemplo, decidir deshabilitar una
funcionalidad del browser que es necesaria para que se ejecute un determinado servicio o peor aún, browsers
distintos pueden interpretar el mismo código de distintas formas. Típicamente Netscape y Microsoft, que
producen los dos browser más usados del mercado, no se ponen de acuerdo sobre como se implementan
diversas tecnologías en el cliente.

Programar del lado del servidor tiene como gran ventaja que cualquier cosa puede hacerse sin tener en
cuenta el tipo de cliente, ya que la aplicación se ejecuta en el servidor que es un ambiente controlado. Una
vez ejecutada la aplicación, el resultado que se envía al cliente puede estar en un formato “normalizado” que
cualquier cliente puede mostrar. La desventaja reside en que el server se sobrecarga de trabajo ya que además
de servir páginas es responsable de ejecutar aplicaciones. A menudo esto redunda en requisitos de hardware
mayores a medida que el server ejecuta más y más servicios.

Programación en el cliente
HTML
CSS
DHTML
JavaScript
Java
VBScript

Programación en el servidor
CGI (Cualquier Lenguaje)
ASP
PHP
mod_perl

Debido a las incompatibilidades existentes y a la posibilidad de que el usuario controle que cosas se ejecutan
y cuales no la programación del lado del cliente no es muy recomendable y debe limitarse a código altamente
standard que pueda interpretarse de cualquier forma en cualquier browser, lo cual obliga a ejecutar la gran
mayoría de las aplicaciones y servicios de un web site del lado del servidor.

Generación de web sites dinámicos usando PHP.

Server Side Programming.

Para el desarrollo de aplicaciones del lado del servidor existen 3 grandes metodologías, utilizar el protocolo
CGI, utilizar una API provista por el web-server o bien utilizar un “módulo” del web server.

El protocolo CGI:

El protocolo CGI (Common Gateway Interface) fue creado para establecer un protocolo standard de
comunicación entre el web-server y cualquier lenguaje de programación de forma tal que desde el lenguaje
“x” puedan recibirse datos que el usuario envía usando el método “POST” o “GET” y además el resultado de
la aplicación sea derivado por el web-server al browser. Típicamente para recibir datos se usa alguna
biblioteca o módulo del lenguaje elegido que implementa el protocolo CGI y para enviar datos simplemente
se envían al standard-output desde el lenguaje elegido y el web-server se encarga de redireccionar esto al
browser.

Para ejecutar una aplicación CGI el web-server en general procede de la siguiente manera:

• Se toma el “request del browser” y los datos que se envían al server por método “GET” o “POST” se

pasan a variables de ambiente.

• El server redirecciona su salida standard al browser.
• El server crea un proceso (Fork) (que tiene la salida standard redireccionada)
• El server ejecuta en el proceso creado la aplicación deseada.
• Se ejecuta la aplicación

Cuando la aplicación termina de ejecutarse el proceso muere. Dentro de la aplicación se usa algún
mecanismo para recuperar los datos enviados por el browser desde las variables de ambiente (todos los
lenguajes manipulan variables de ambiente). El protocolo CGI justamente consiste en especificar de que
forma los datos enviados por el browser se convierten en variables de ambiente, esto en general es
transparente al usuario.

De esta forma pueden realizarse aplicaciones para un web-site en casi cualquier lenguaje, los lenguajes
interpretados rápidamente ganaron terreno ya que tienen un ciclo de desarrollo en tiempo inferior a los
lenguajes compilados y son más fáciles de debuggear dentro del ambiente CGI.

Los lenguajes no interpretados (C, C++) tienen como ventaja que requieren menos recursos del server al
generarse el proceso CGI (no hace falta un interprete) y además suelen ser mucho más veloces en su
ejecución (no se necesita interpretar nada), sin embargo el desarrollar y debuggear suelen ser tareas muy
complejas y no siempre se justifica el esfuerzo si la aplicación es pequeña. En los comienzos de la web la
gran mayoría de las aplicaciones se encontraban en la categoría chica / muy chica por lo que la eficiencia no
era un factor importante y por eso los lenguajes com
  • Links de descarga
http://lwp-l.com/pdf2217

Comentarios de: Generación de web sites dinámicos usando PHP (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad