Está en la página 1de 10

Jos Manuel Cuadra Gaspar IN2A

G.S. Desarrollo de Aplicaciones Informticas

Diseo de Entornos Grficos ASP,JSP y PHP.

I.E.S. Santiago Hernndez

Trabajo elaborado por: Jos Manuel Cuadra Gaspar

20/02/2012

Jos Manuel Cuadra Gaspar IN2A

ndice. 3 Definicin de lenguajes de servidor................................................................ Diferencias entre los lenguajes de script de los lenguajes de servidor....... Enumeracin de los lenguajes tratados: ASP............................................................................................................... JSP................................................................................................................ PHP............................................................................................................... Comparativa...................................................................................................... El uso en proyectos............................................................................................ Ejemplo de cdigo Seleccin y Borrado de registros................................... Bibliografa.......................................................................................................... 4 4 5 5 6 7 10 3

Jos Manuel Cuadra Gaspar IN2A

ASP, JSP y PHP

Definicin de lenguajes de servidor.

Los lenguajes de servidor como PHP,ASP y JSP, son lenguajes interpretados en el lado del servidor. Definimos la relacin servidor-cliente, como la del servidor de paginas web que interpreta los preparados en estos lenguajes y envia HTML(*) al cliente. Asi este en su navegador solo tiene que interpretar html, es independiente de la tecnologia (ASP,PHP y JSP...), todos saben HTML.

En qu se diferencian los lenguajes de script de los lenguajes de servidor.

Aclararemos que tambin se llama lenguaje script del lado del servidor, a alguno de estos lenguajes. Pero la diferencia de los lenguajes de script en el lado del cliente,es que en estos es el navegador del cliente donde se ejecuta el cdigo, ejemplo el javascript que se ejecuta en el navegador y podemos ver el cdigo fuente con sus funciones y dems. Sin embargo como ya he comentado el servidor SOLO ENVA HTML(*) al cliente, nunca veremos codigo PHP, ASP, JSP u otro del lado del servidor. Como los lenguajes de script, estos lenguajes de servidor surgieron por la necesidad de paginas web mas dinmicas y para ampliar las funcionalidades, que por ejecutarse en el lado del cliente no era capaz de satisfacer las necesidades de integridad, y sobre todo de seguridad y acceso a ciertos contenidos, como el acceso a bases de datos, sistemas de ficheros, entre otros.

Jos Manuel Cuadra Gaspar IN2A

ASP

Es la solucin de Microsoft a esta inquietud de dinamismo, creando ASP (Active Server Pages, o Paginas Activas del lado de Servidor). Como repetir hasta el aburrimiento, ejecuta en el servidor un script y retorna HTML(*). En sus inicios utilizaban VBScript del lado del servidor (uso de Objetos del lenguaje), al pasar a plataforma .NET ya es posible utilizar sus lenguajes orientados a objetos para prograar del lado del servidor como VisualBasic.net y C#.net principalmente.

En principio al ser tecnologa Microsoft, solo funcionan con sus productos, es decir Servidores Windows, con servidores web Internet Information Server, bases de datos SqlServer mejor si es posible etc. Existen interpretes de ASP y ASP.net con MONO en linux sobre apache, que son capaces de servir estas pginas. Comnmente se llaman paginas asp para referirnos a esta tecnologa. En un cdigo java las marcas de php empiezan y terminan <% codigo java %>

JSP

JavaServer Pages (JSP) es una tecnologa Java, creada por Sun Microsystems, que permite generar contenido dinmico para web, en forma de documentos HTML, XML o de otro tipo. Se basa en los mismos principios tcnicos que ASP y PHP, un lenguaje script de servidor. Aunque se suele hablar de crear paginas jsp, para las llamadas paginas hechas en Java que son de mostrar datos y servlets a las que ejecutan operaciones y no muestran datos. esta concepcin es obsoleta y todo cdigo y esto es extensible a cualquier sistema, ahora mismo se apoya en el modelo Modelo-Vista-Controlador y todo son servlets, o asps o phps, solo que unos se usan para una de estas secciones. Su servidor web principal es el apache, con la extensin tomcat para interpretar cdigo java. Existe tambin un servidor propio llamado GlassFish que tambin est tomando fuerza. En un codigo java las marcas de php empiezan y terminan <% codigo java %>

Jos Manuel Cuadra Gaspar IN2A

PHP

PHP o su definicin recursiva PHP: Hypertext Preprocessor (aunque al inicio se llamo Personal Home Page), creado originalmente por Rasmus Lerdorf en 1994. Esta tecnologa es anloga a las anteriores pero esta vez se basa en sintaxis de c y perl. Se basa en sistemas web apache al que hay que aadirle como pasa con todos sus propias extensiones php para que ejecute cdigo en este lenguaje.

En un codigo php las parcas de php empiezan y terminan <?php codigo php ?>

Esta tabla resume un poco las ventajas e inconvenientes de estos lenguajes.

JSP Facil de aprender Multiplataforma conexion a datos Distribuido Open Source Soporte continuo POO clases N S S S S S S

PHP S S S S S S S

ASP S N S N N N N

ASP.NET (VB) S N S S N S S

ASP.NET(C#) N N S S N S S

Jos Manuel Cuadra Gaspar IN2A

El uso en proyectos.

Independientemente de los lenguajes hay que tener muy encuenta, el desarollo open source, gratuito a fin de cuentas y lo mas rentable es plataformas Linux con desarrollo Java o PHP (LAMP)(*1) atacando MySql como base de datos y Apache como servidor web.

Desde mi experiencia, sin duda alguna, para desarollar una aplicacin web de nivel Empresarial, la plataforma Java es la ms potente con su extensin J2EE. Pues se aaden objetos de empresa como los EBeans a la programacin de script de .NET

La segunda en mi eleccin es PHP, mas en concreto LAMP para desarrollo de una aplicacin web grande o e comercio electrnico. mas sencilla y rapida en desarrollo, tiene orientacin a objetos y es sobre todo LIBRE, COSTO CERO.

En tercer lugar empatado con PHP C# mas robusto que vb.Net no tan potente como Java, pero DE PAGO,

Y por ultimo no usara ASP por estar desfasada.

Jos Manuel Cuadra Gaspar IN2A

Listado PHP en una tabla para borrar---

---msql.php //declaro variables de conexin <?php $hostname_mysql = "localhost"; $database_mysql = "test"; $username_mysql = "root"; $password_mysql = ""; $mysql_conn = mysql_connect($hostname_mysql, $username_mysql, $password_mysql) or trigger_error(mysql_error(),E_USER_ERROR); ?> ---msql.php

----listado.php

<?php require_once('conexiones/msql.php'); ?> <?php //conecto, recupero las filas en el recordset

mysql_select_db($database_mysql, $mysql_conn); $query_RS = "SELECT * FROM usuarios ORDER BY usuarios.nombre asc"; $recordSet = mysql_query($query_RS, $mysql_conn) or die(mysql_error()); $filaRecorset = mysql_fetch_assoc($recordSet);

Jos Manuel Cuadra Gaspar IN2A $totalFilasAfectadas = mysql_num_rows($recordSet);

?> //creo la tabla con los registros y el formulario que llama a borrar.php para su borrado. <table border="1"> <tr> <td>codigo_usuario</td> <td colspan="4">nombre</td> </tr> <?php do { ?> <tr> <td><?php echo $filaRecorset['codigo_usuario']; ?></td> <td><?php echo $filaRecorset['nombre']; ?></td> <td><?php echo $filaRecorset['c1']; ?></td> <td><?php echo $filaRecorset['c2']; ?></td> <td> <form action="borrar.php" method="post" name="formulario<?php echo $filaRecorset['codigo_usuario']?>"><input type="hidden" name="codigoParaBorrar" id="codigoParaBorrar" value="<?php echo $filaRecorset['codigo_usuario']?>"/> <A href="javascript:document.formulario<?php echo $filaRecorset['codigo_usuario']?>.submit()">Borrar</a> </form>

</td>

</tr> <?php } while ($filaRecorset = mysql_fetch_assoc($recordSet)); ?> </table> <?php mysql_free_result($recordSet); ?>

Jos Manuel Cuadra Gaspar IN2A

-----listado.php

---borrar.php

<?php require_once('conexiones/mysql_t1.php'); ?> <?php $codigo=$_POST["codigoParaBorrar"];

mysql_select_db($database_mysql, $mysql_conn); $query_RS = "DELETE FROM usuarios WHERE usuarios.codigo_usuario=" . $codigo;

$recordSet = mysql_query($query_RS, $mysql_conn) or die(mysql_error());

echo "Borado el usuario con cdigo - >". $recordSet . " <-"

?> ---borrar.php

Jos Manuel Cuadra Gaspar IN2A

Notas: (*) Al referirme a HML, quiero decir que no envia nada que sea interpretado por el navegador de su propio lenguaje de servidor, claro que puede enviar otras cosas como XML y los ficheros de formato XSL o ficheros CSS, lo que queramos, pero lo habitual es enviar HTML. Eso no quita para que el propio PHP por poner un ejmplo pueda generar JavaScript (que sera del lado del cliente). (*1) LAMP acronimo de Linux Apache MySql PHP.

Bibliografa:

La tabla comparativa de lenguajes, est basada en la que aparece en ESCUELA POLITCNICA DEL EJRCITOFACULTAD DE INGENIERA EN SISTEMAS E INFORMTICA DISEO E IMPLEMENTACIN DE UNA APLICACIN WEB PARA LA GESTIN Y PLANIFICACIN DE CURSOSDE CAPACITACIN USANDO HERRAMIENTAS OPENSOURCE del 2006, pero se han aadido y actualizado los datos asi como separado las tecnologias vb y c# del apartado ASP.NET.

Wikipedia php, Para referirme a la fecha de su creacin.

El cdigo es original de mi creacin, as como todo el contenido restante de quitar las contenida en la bibliografa, de mi experiencia y conocimientos previos.

10