1. Tarea 3.1: Desarrollar los sigtes conceptos de
programación Web
Desarrollar los sigtes conceptos asociados a la programación Web
CONTENIDO
3.1 Configuración de servidores
Web
3.1.1 instalación
3.1.2 Publicación
3.1.2.1 Registro de Dominio
3.1.2.2 Routing en ISP.
3.1.3 Definicion de Web Site.
3.1.3.1 Root Site
3.1.3.2 Virtual directory
3.1.3.3 ISAPI filter.
3.1.3.3 default Document.
3.2 Breve reseña de PHP (CGI
mas común de Internet)
3.2.1 Similitudes con C++.
3.2.1 Declaración, iteración y
control.
2. 3.3 PHP interacción con
formularios y QueryString:
3.3.1 recibiendo los parámetros
desde el cliente por Query String
($_GET).
3.3.2 recibiendo los parámetros
desde el cliente por Formularios
($_POST).
3.4 PHP Server Response:
3.4.1 Out object
3.4.2 Generando contenido
dinámico en el cliente (en cualquier
sección de la página html).
3.5 Interacción de PHP conArchivos Planos
3.5.1 Leer un Archivo Plano y
mostrar como contenido dinámico de
la página.
3.5.2 Recibir los parámetros de un
formulario o Query string y hacerlo
persistente en un archivo
3.5.3 upload y download de
archivos.
3.6 PHP Interacción con mySql.
3.6.1 Construir una Base de datos
elemental en MySql.
3.6.1 Leer los datos de una base
3. de datos y mostrarlos en una tabla
html.
3.7 PHP interacción con XML:
3.6.1 Conceptos Básicos de XML.
3.6.2 Conceptos Básicos de XSL.
3.6.3 XML transformation.
3.6.4 Mostrando contenido
dinámico con transformación.
3.8 Ventajas y Desventajas de
PHP.
Introduccion
También se tratan aspectos más avanzados como eventos HTML,
procesamiento de formularios, pseudo-clases CSS, disposición o
estructuración de una web en capas, y se realiza una introducción
a los últimos elementos del lenguaje introducidos con HTML , PHP
C+++,XLS,MLSQL, XML y CSS: transiciones, transformaciones,
audio, vídeo, geolocalización, etc. Por último se incluye una sección
de introducción a JavaScript en la que también se parte desde los
conceptos más básicos (inclusión de scripts en HTML, variables,
operadores, etc.) hasta algunos más avanzados como funciones,
eventos o como trabajar con el DOM de una página Web.
Hoja de presentación para trabajos de la UASD
Universidad Autónoma de Santo Domingo
UASD
5. Desarrollo
CONTENIDO
3.1 Configuración de servidores
Web
La configuración de un servidor web es el proceso de ajustar los parámetros,
configuraciones y componentes de un servidor para optimizar su rendimiento.
Pasos para configurar un servidor web:
Elegir el hardware
Instalar el sistema operativo
Configurar la red
Instalar las aplicaciones
Configurar la seguridad
Configurar los ajustes del servidor web
Habilitar el registro de errores y accesos
Supervisar y mantener el servidor
3.1.1 instalación
La instalación de un programa informático es el proceso de preparar un programa
para que pueda ser ejecutado en una computadora.
¿Qué implica la instalación de un programa?
Transferir el programa a la computadora
Configurar el software o hardware
Crear accesos directos en el escritorio, el menú Inicio y la barra de herramientas de
inicio rápido
¿Cómo se instala un programa?
6. Se siguen una serie de pasos que pueden variar según el sistema operativo y el
programa que se esté instalando
Se puede instalar un programa desde una red
Se puede abrir Obtener programas, seleccionar un programa de la lista y hacer clic
en Instalar
Se siguen las instrucciones que aparecen en pantalla
¿Por qué es importante la instalación de programas?
Es un aspecto esencial del uso de una computadora
Es importante comprender el proceso para instalar software para el trabajo, el
entretenimiento o el uso personal
3.1.2 Publicación
es el arte de organizar un conjunto de instrucciones que las computadoras siguen
para realizar tareas específicas. Es fundamental para la comunicación entre usuarios
y máquinas, y es la base de todas las aplicaciones y programas que usamos a diario.
3.1.2.1 Registro de Dominio
El registro de dominio es el proceso de reservar un nombre de dominio en internet
para un sitio web, correo electrónico, o cualquier otro servicio web.
Características del registro de dominio
Es necesario para tener presencia en línea
El registro se hace ante un registrador
El registrante es el propietario del dominio mientras el registro esté vigente
El precio varía según la extensión del dominio
El registro tiene un período de validez que puede renovarse
El registrante es responsable de usar el dominio de manera correcta
La información sobre el propietario está disponible públicamente
7. Importancia del registro de dominio
Identifica a la marca de manera sencilla y cómoda
Aumenta la visibilidad de la marca
Facilita el acceso de los usuarios a la página
Proceso de registro de dominio
El registrante firma un contrato con el registrador
El registrador mantiene una base de datos con los nombres de dominio registrados
El registrador vende los dominios al gran público
3.1.2.2 Routing en ISP.
El enrutamiento en un proveedor de servicios de internet (ISP) es el proceso de
configurar rutas para que el ISP anuncie a sus clientes y pares.
Características del enrutamiento en un ISP
El enrutamiento se configura en dirección saliente.
Las rutas se eligen según prioridades, como las rutas locales de enlace o las rutas de
política de enlace.
El enrutamiento se puede configurar para que los clientes tengan rutas
predeterminadas o rutas específicas.
El enrutamiento se puede configurar para que los ISP anuncien solo dos rutas
agregadas a los pares de tránsito.
Cómo verificar el enrutamiento de un ISP
Para verificar el enrutamiento de un ISP en Windows, se puede usar el comando
"tracert" en el Símbolo del sistema. Este comando muestra la ruta que siguen los
paquetes de red para llegar a un destino específico.
Protocolo de enrutamiento BGP
El protocolo de enrutamiento BGP se utiliza entre diferentes ISP, lo que se conoce
como BGP externo. Los grandes ISP también utilizan BGP como protocolo de
enrutamiento central dentro de sus propias redes, lo que se denomina BGP interno.
8. 3.1.3 Definicion de Web Site.
Un sitio web es un conjunto de páginas web que se encuentran interconectadas y
que son accesibles a través de internet. Los sitios web pueden ser utilizados para
compartir información, ofrecer servicios o vender productos.
Características de un sitio web
Están alojados en un servidor web
Se pueden acceder a través de un nombre de dominio específico
Permiten mostrar información, imágenes, videos y otros elementos
Son una plataforma digital para compartir información
Permiten proporcionar servicios
Permiten facilitar la comunicación
Usos de un sitio web
Los clientes pueden explorar productos o servicios
Los clientes pueden realizar compras
Los clientes pueden contactarse para recibir atención al cliente
Los sitios web pueden actuar como la única y exclusiva interacción con los clientes
Clasificación de sitios web
Se pueden clasificar según su contenido, tecnología o propósito
El contenido que incluyen, como informativo, transaccional o interactivo
La tecnología: un sitio web puede ser estático, dinámico o un CMS.
9. 3.1.3.1 Root Site
El sitio raíz de SharePoint es el sitio principal de una organización que usa SharePoint
Online. Es el primer sitio que se ve al iniciar sesión y es la base para el resto de la
experiencia de SharePoint.
Características
Es el sitio de nivel superior y tiene la URL más corta
Se crea automáticamente al adquirir una cuenta de Office 365
No se puede eliminar
Es el centro central para acceder a los sitios de SharePoint Online
Es la ubicación centralizada para organizar y almacenar contenido de SharePoint
Usos
Se utiliza como página de inicio de intranet principal
Se utiliza para conectar a los empleados con una experiencia de búsqueda de
intranet
Se utiliza para implementar audience targeting
Se utiliza para fomentar las comunicaciones bidireccionales
Mejoras
Se puede actualizar a un sitio de comunicación moderno para aprovechar las últimas
funciones y mejorar la experiencia del usuario
Se puede garantizar una identidad de marca coherente
Se puede implementar una estructura de navegación clara e intuitiva
Se puede mantener el contenido del sitio raíz actualizado
Sitio de inicio vs. Página de inicio de SharePoint vs. Sitio central ...
Traducido — Sitio raíz ... Sin embargo, hay un sitio que se crea de manera
predeterminada una vez que crea su cuenta de Office 365, y...
10. 3.1.3.2 Virtual directory
The <virtualDirectory> element is a child of the <application> element and controls
the configuration settings for a specific virtual directory. A virtual directory is a
directory name (also referred to as path) that you specify in Internet Information
Services (IIS) 7 and map to a physical directory on a local or remote server. The
virtual directory name becomes part of the application's URL, and users can request
the URL from a browser to access content in the physical directory, such as a Web
page or a list of additional directories and files. If you specify a different name than
the physical directory for the virtual directory, it is more difficult for users to discover
the actual physical file structure on your server because the URL does not map
directly to the root of the site.
In IIS 7, each application must have a virtual directory, known as the root virtual
directory, and maps the application to the physical directory that contains the
application's content. However, an application can have more than one virtual
directory. For example, you might use a virtual directory when you want your
application to include images from another location in the file system, but you do
not want to move the image files into the physical directory that is mapped to the
application's root virtual directory
3.1.3.3 ISAPI filter.
ISAPI filters are DLL files that can be used to modify and enhance the functionality
provided by IIS. ISAPI filters always run on an IIS server, filtering every request until
they find one they need to process. The ability to examine and modify both incoming
and outgoing streams of data makes ISAPI filters powerful and flexible.
Filters are registered at either the site level or the global level (that is, global filters
apply to all sites on the IIS server), and are initialized when the worker process is
started. A filter listens to all requests to the site on which it is installed.
Both ISAPI filters and ISAPI extensions can only be developed using C/C++. Visual
Studio comes with wizards that make ISAPI development fast and easy.
11. 3.1.3.3 default Document.
A default document is a file that a server sends when a user requests a URL that
doesn't specify a file name. It can also refer to a document template assigned to a
document when it's created.
Default documents in web servers
In a web server, the default document is the file that's displayed when a user
browses to a folder without specifying a file name.
The server follows a specific order to determine which file to serve as the default
document.
The default document can be configured in Web.config using IIS.
Default documents in SAP
In SAP, a default document is a document template that's assigned to a document
when it's created.
Default documents can be passed from the Business Workplace to the appropriate
PC application.
3.2 Breve reseña de PHP (CGI
mas común de Internet)
PHP es un lenguaje de programación interpretado2 del lado del servidor
y de uso general que se adapta especialmente al desarrollo web.3 Fue
creado inicialmente por el programador danés-canadiense Rasmus
Lerdorf en 1994.4 En la actualidad, la implementación de referencia de
PHP es producida por The PHP Group.5 PHP originalmente
significaba Personal Home Page (Página personal), pero ahora significa el
inicialismon 1 recursivo PHP: Hypertext Preprocessor.7
El código PHP suele ser procesado en un servidor web por
un intérprete PHP desarrollado como un módulo, un daemon o como
un ejecutable de interfaz de entrada común (CGI). En un servidor web, el
resultado del código PHP interpretado y ejecutado —que puede ser
cualquier tipo de datos, como el HTML generado o datos de imágenes
binarias— formaría la totalidad o parte de una respuesta HTTP. Existen
diversos sistemas de plantillas, sistemas de gestión de
contenidos y frameworks que pueden emplearse para organizar o facilitar
12. la generación de esa respuesta. Por otra parte, PHP puede utilizarse para
muchas tareas de programación fuera del contexto de la web,
como aplicaciones gráficas autónomas8 y el control de drones.9 También
se puede interpretar y ejecutar un código PHP cualquiera a través de
una interfaz de línea de comandos (CLI).
El intérprete estándar de PHP, impulsado por Motor Zend, es un software
libre publicado bajo Licencia PHP. PHP ha sido ampliamente portado y
puede ser desplegado en la mayoría de los servidores web en casi todos
los sistemas operativos y plataformas, de forma gratuita.
El lenguaje PHP evolucionó sin una especificación formal escrita o un
estándar hasta 2014, con la implementación original actuando como el
estándar de facto que otras implementaciones intentaban seguir. Desde
2014, se ha trabajado para crear una especificación formal de PHP.
3.2.1 Similitudes con C++.
C++ tiene similitudes con otros lenguajes de programación, como C, Java, Ruby,
entre otros.
C
C++ es un superconjunto de C, por lo que comparten sintaxis, estructura de código y
compilación.
Utilizan las mismas funciones básicas de entrada y salida de archivos.
Utilizan operadores básicos similares, como unario más y unario menos.
13. Utilizan punteros de función.
Utilizan estructuras para agrupar variables relacionadas.
Java
Ambos son lenguajes de programación orientados a objetos.
Comparten una sintaxis similar.
Utilizan declaraciones condicionales similares (como switch, if-else) y bucles (como
for, while).
Comparten los mismos tipos de datos primitivos.
Muchas palabras clave son comunes a ambos idiomas.
Ruby
Al igual que C++, en Ruby, público, privado y protegido funcionan de manera similar.
Hay muchos operadores similares en Ruby y en C++.
Las excepciones funcionan de manera similar.
3.2.1 Declaración, iteración y control
En programación, la declaración, iteración y control se relacionan con la ejecución
repetida de un bloque de código.
Declaración de iteración
También se conoce como bucle
Es una estructura de control que ejecuta repetidamente una declaración, hasta que
se cumpla una condición
14. La expresión de control debe tener un tipo escalar
Existen diferentes tipos de declaraciones de iteración, como while, do, for
Iteración
Es la repetición de un bloque de código o una operación
Se controla por estructuras de control como bucles
Requiere una condición que determine cuándo termina el proceso
Se utiliza cuando se necesita que se ejecute un conjunto específico de instrucciones
en diversas ocasiones
Control
Las estructuras de control de iteración son herramientas fundamentales que
permiten repetir un conjunto de instrucciones varias veces de manera controlada
Se suelen expresar con palabras clave como while, repeat, for o do.. till
El número de repeticiones se basa en criterios definidos en la estructura del bucle
3.3 PHP interacción con formularios y QueryString
Otra de las características más potentes de PHP es la forma de gestionar
formularios HTML. El concepto básico que es importante entender es que
cualquier elemento de un formulario estará disponible automáticamente en
sus scripts de PHP. Por favor, lea la sección del manual sobre Variables desde
fuentes externas para obtener más información y ejemplos sobre cómo usar
formularios con PHP.
3.3.1 recibiendo los parámetros desde el cliente por
Query String ($_GET).
Para recibir parámetros desde el cliente por Query String ($_GET) en JavaScript, se
puede utilizar la función getParameterByName.
Explicación
La función getParameterByName recibe un parámetro de tipo cadena de texto.
15. Utiliza una expresión regular para buscar todo el contenido entre el final de la
cadena recibida y el símbolo de igual (=).
También busca hasta encontrar el símbolo «et» o «ampersand» (&).
Al final, devuelve el texto encontrado decodificado.
Si no encuentra coincidencias, devuelve una cadena vacía.
En Express, se puede implementar lo siguiente para recibir parámetros por GET:
router.get("/payment-handler-A", (req, res) => {
const data = req.query;
console. log(data);
return res. status(200). json(data);
});
Una cadena de consulta (query string) es una parte de un localizador de recursos
uniforme (URL) que asigna valores a una serie de parámetros especificados.
3.3.2 recibiendo los parámetros desde el cliente por
Formularios ($_POST).
En PHP, los parámetros de los formularios enviados por el método POST se reciben
en la variable global $_POST.
¿Cómo funciona el método POST?
El método POST crea un objeto de solicitud que contiene los datos del formulario.
Este objeto se envía al servidor.
El servidor procesa la solicitud y devuelve una respuesta.
La respuesta puede ser un mensaje de confirmación, una redirección o un error.
¿Por qué usar el método POST?
Los datos enviados por el método POST no son visibles en la URL.
Esto resuelve el problema de la longitud máxima de los datos enviados.
16. Garantiza que las contraseñas no sean visibles.
Evita que se pueda proporcionar un enlace a la página que procesa el resultado de
una determinada entrada.
Ofrece mucha discreción, ya que los datos no se muestran en el caché ni tampoco en
el historial de navegación.
¿Qué es $_POST?
$_POST es una variable automática global, lo que significa que está disponible en
cualquier parte del script.
3.4 PHP Server Response:
La respuesta del servidor en PHP es la acción que realiza un servidor web para
responder a una solicitud de un cliente. Esta respuesta puede ser HTML generado o
datos de imágenes binarias.
¿Cómo funciona un servidor PHP?
El servidor PHP interpreta el código PHP de una aplicación
Transforma el código PHP en código HTML
Entrega el código HTML a los clientes web
¿Qué es PHP?
PHP es un lenguaje de programación que se utiliza para desarrollar aplicaciones web
y crear páginas web
PHP es versátil, fácil de usar y se integra con múltiples tecnologías
PHP es de código abierto
¿Cómo manipular la respuesta PHP HTTP?
Las funciones PHP HTTP permiten manipular la respuesta PHP HTTP antes de
mostrarla
Estas funciones están integradas en el núcleo de PHP
¿Qué es $_SERVER?
$_SERVER es una variable superglobal de PHP que contiene información sobre
encabezados, rutas y ubicaciones de scripts
17. Las entradas de este array son creadas por el servidor web
3.4.1 Out object
An object definition can refer to a data structure in object-oriented programming or a
discrete entity in computer graphics.
Object-oriented programming
An object is a data structure that can contain variables, constants, functions, and other data
structures
Objects are abstract data types created by developers
Objects can have multiple properties and methods
Objects can contain other objects
Objects provide a structured approach to programming
Objects provide encapsulation, which protects data from being modified or destroyed by
other functions or methods
A user account created for a website is an example of an object
Computer graphics
An object is a discrete entity, such as an icon or window, that can be manipulated
independently of other entities
Object definition through an instance
When checking out an object definition through an instance, you can modify the definition
or create a copy of it
You can modify the definition if you have the required privileges
3.4.2 Generando contenido dinámico en el cliente (en
cualquier sección de la página html).
Para facilitar las cosas, utilizaremos jQuery para mostrar u ocultar el
contenido, junto con JavaScript. Puedes agregar tantas condiciones como
quieras, solo asegúrate de incluir siempre el contenido
18. predeterminado en caso de que los parámetros estén mal escritos o no
estén en la URL.
Una página de HTML dinámico es cualquier página web en la que
los scripts en el lado del cliente cambian el HTML del documento,
después de que este haya cargado completamente, lo cual afecta a la
apariencia y las funciones de los objetos de la página. La
característica dinámica del DHTML, por tanto, es la forma en que la
página interactúa con el usuario cuando la está viendo, siendo la página
la misma para todos los usuarios
3.5 Interacción de PHP conArchivos Planos
Para interactuar con archivos planos en PHP, se puede usar la función fopen para
abrir el archivo y la función file_get_contents para leer el contenido.
Abrir un archivo
Para abrir un archivo de texto plano en PHP, se usa la función fopen.
Esta función necesita dos parámetros: el archivo que se quiere abrir y el modo en
que se quiere abrir.
Si la operación es exitosa, la función devuelve un puntero en el archivo.
Si la operación no es exitosa, la función devuelve cero.
Leer el contenido de un archivo
Para leer el contenido completo de un archivo, se usa la función file_get_contents.
Esta función devuelve el contenido del archivo como una cadena de texto.
Un ejemplo básico de cómo utilizar esta función sería: $contenido =
file_get_contents('archivo').
Consideraciones adicionales
Se puede abrir un archivo pero también una URL externa.
fopen() crea una conexión, por eso hay que cerrarla posteriormente.
19. 3.5.1 Leer un Archivo Plano y mostrar como contenido
dinámico de la página.
El contenido dinámico permite que los sitios web se adecúen a cada visitante.
En los sitios web, se emplean múltiples modos de detectar las características
importantes de los internautas y los contenidos se relacionan
respectivamente. Por ejemplo, en una tienda en línea, se pueden usar
diversos contenidos para atraer clientes nuevos y existentes. Aquéllos que
están acostumbrados al sitio experimentan un proceso de conversión distinto
del proceso que se usa para agradar a los recién llegados.
No es posible presentar contenido dinámico sin páginas web estáticas. Por
tanto, en términos generales, los sitios web de las tiendas en línea se basan
en CMS o en PHP.
El contenido dinámico tiene diversas formas e intenciones específicas
dependiendo del sitio web. Los administradores de páginas web usan el CMS
para adaptar textos, imágenes, boletines y formularios a las necesidades
específicas de cada cibernauta.
3.5.2 Recibir los parámetros de un formulario o Query
string y hacerlo persistente en un archivo
La capacidad de transferir valores a una página web mediante cadenas de consulta
representa un riesgo de seguridad. Las aplicaciones basadas en modelos aplican la
práctica óptima de comparar siempre cualquier parámetro pasado como cadena de
consulta con una lista de los nombres de parámetros y de tipos de datos esperados.
De forma predeterminada, las aplicaciones basadas en modelos permiten que un
conjunto de parámetros de cadena de consulta especificado pase a un formulario.
Use estos parámetros para definir los valores predeterminados al crear un nuevo
registro en la aplicación. Cada parámetro debe usar una convención de
nomenclatura estándar que incluye una referencia al nombre lógico de la columna.
Para obtener más información, consulte Establecer los valores de columna mediante
parámetros que se pasan a un formulario.
En sus aplicaciones, es posible que desee pasar parámetros de cadena de consulta
personalizados a un formulario. Este artículo proporciona información sobre cómo
puede definir un conjunto de nombres de parámetros y de tipos de datos específicos
que se pueden aceptar para un determinado formulario.
20. 3.5.3 upload y download de archivos
.El upload o subir es la acción de enviar datos o archivos desde un dispositivo a un
servidor o a otro equipo. El download o descargar es la acción de recibir datos o
archivos desde un servidor o desde otro equipo a un dispositivo.
Ejemplos de upload Enviar un correo electrónico, Cargar una foto a un sitio web,
Subir un archivo a Dropbox.
Ejemplos de download Ver un video, Navegar por Internet, Descargar un archivo de
Dropbox.
Cómo descargar un archivo con Google Chrome
Abrir Chrome
Ir al sitio donde está el archivo que se desea descargar
Guardar el archivo
Si se pregunta, elegir dónde se desea guardar el archivo y, luego, hacer clic en
Guardar
Cómo descargar un archivo con Dropbox
Abrir Dropbox
Seleccionar "More" (Más)
Hacer clic en "Download" (Descargar)
Para subir un archivo a Dropbox, se puede iniciar sesión en dropbox.com, seleccionar
el botón "Upload" (Subir) y elegir el archivo o la carpeta que se quiera subir.
3.6 PHP Interacción con mySql.
PHP y MySQL son dos tecnologías que se pueden utilizar en conjunto para crear sitios web
dinámicos. PHP es un lenguaje de programación, mientras que MySQL es una base de datos
relacional.
Cómo conectar PHP con MySQL
Conectarse al servidor MySQL con la instrucción mysqli_connect
21. Seleccionar la base de datos a la que se quiere acceder con mysqli_select_db
Consultar la base de datos
Cerrar la conexión con el servidor MySQL con mysqli_close
Consideraciones de seguridad
Para proteger la base de datos de ataques como la inyección SQL, se recomienda: Usar
sentencias preparadas, Validar y escapar los datos de entrada, Usar contraseñas fuertes,
Limitar los privilegios de los usuarios de la base de datos.
Ventajas de la combinación PHP y MySQL
Esta combinación permite a las aplicaciones web almacenar, recuperar y manipular datos en
tiempo real.
Uso en plataformas CMS
WordPress, Joomla y muchas otras plataformas CMS dependen de esta combinación.
Cómo Conectar PHP con Bases de Datos MySQL - Hostinet
¿Por qué conectar PHP con MySQL? PHP, un lenguaje de programación ampliamente
utilizado en la web, se integra perfectamente con My...
22. 3.6.1 Construir una Base de datos elemental en MySql
.Cómo crear una base de datos MySQL vacía
Haz clic en "Base de Datos MySQL".
Haz clic en el botón de "Crear una nueva base de datos MySQL".
Ponle nombre a tu nueva base de datos y clica en "Confirmar".
Aparecerá una tabla para gestionar dicha base de datos.
MySQL es un sistema de gestión de base de datos que actualmente
cuenta con más de seis millones de clientes en todo el mundo. Un
software libre que se engloba en el grupo de licencias GNU GPL. MySQL
es a día de hoy ampliamente utilizado en una gran selección de
aplicaciones web tales como WordPress o Drupal, entre otras. Una de sus
principales ventajas es que su lectura es muy rápida, por lo que es una
opción estupenda para este tipo de apps.
A continuación señalamos las principales características que definen
las bases de datos MySQL.
Arquitectura cliente y servidor: MySQL, al igual que cualquier otro
sistema de registros de datos, es un programa de registro basado en un
sistema entre cliente y servidor. Se trata por tanto de un software en el
que se engloban un amplio abanico de clientes y servidores que
establecen comunicación entre ellos.
Compatibilidad con SQL: SQL es un lenguaje de programación que
permite tanto la consulta como la renovación de datos para la gestión de
una base en la que se almacena un conjunto de datos.
Búsqueda de texto completo: la búsqueda de texto completo acelera y
facilita en gran medida el sistema de búsqueda de las palabras de los
datos contenidos en la base.
Lenguaje de programación: la base de datos MySQL está escrita en C y
C++, dos de los lenguajes de programación más demandados y
populares de todo el mundo.
Sistemas de almacenamiento: este tipo de bases proporciona sistemas
de almacenamiento tanto transaccionales como no transaccionales.
23. 3.6.1 Leer los datos de una base de datos y
mostrarlos en una tabla html.
El objetivo fundamental de las tablas es mostrar una serie de datos en forma
ordenada, organizado en filas y columnas.
Algo importante es que no utilizaremos las tablas para organizar la página
completa (esto se hace en la actualizad mediante CSS, es decir hojas de
estilo. Una vez que avance en este curso puede visitar CSS Ya)
Para la creación de una tabla intervienen una serie de elementos:
<table> Es la marca de comienzo de la tabla. Este elemento requiere la
marca de cierre.
<tr> Es la marca de comienzo de una fila. Esta marca debe estar dentro del
elemento table. Este elemento requiere la marca de cierre.
<td> Es la marca de comienzo de una celda. Esta marca debe estar dentro
del elemento tr. Este elemento requiere la marca de cierre.
Para recordar el nombre de estos elementos HTML:
<table>
<tr> viene de table row que significa fila de la tabla.
<td> viene de table data que significa dato de la tabla.
La mejor forma de entender y dominar este concepto es implementar tablas y
ver su resultado dentro del navegador.
3.7 PHP interacción con XML:
PHP interactúa con XML a través de analizadores XML, que permiten leer, crear,
actualizar y manipular documentos XML.
¿Qué es PHP?
PHP es un lenguaje de programación que se utiliza para crear páginas web
dinámicas.
¿Qué es XML?
XML es un formato de datos estructurado que se utiliza para intercambiar
información entre sistemas.
¿Cómo interactúan PHP y XML?
24. Para leer un archivo XML con PHP, se puede utilizar la función simplexml_load_file().
Para recorrer un archivo XML con PHP, se puede utilizar SimpleXMLElement.
Para enviar XML a un WebService REST con PHP, se puede utilizar la librería
GuzzleHttp.
¿Qué tipos de analizadores XML hay en PHP? Analizadores basados en árboles,
Analizadores basados en eventos.
¿Para qué se utiliza XML?
Para compartir datos a través de diferentes sistemas, como Internet.
Para conectar a un cliente con su proveedor de servicios.
Para que diversos lenguajes de programación informática puedan ser entendidos
tanto por cliente como proveedor.
3.6.1 Conceptos Básicos de XML.
Documento XML
Un documento XML es un documento de texto plano (sin
formato).
Procesador XML (XML processor) y aplicación (application)
Cuando una aplicación necesita leer un documento XML, la
aplicación recurre a un procesador XML. El procesador XML (o
analizador XML, en inglés XML parser) es el que lee el documento,
analiza el contenido y le pasa la información en un formato
estructurado a la aplicación. La recomendación XML especifica lo
25. que debe hacer el procesador, pero no entra en lo que hace
después la aplicación con esa información.
Caracteres (characters)
Los documentos XML pueden estar codificados en distintos juegos
de caracteres (UTF-8, ISO-8859-1, etc).
Marcas (mark-up) y contenido (content)
El texto que contiene un documento XML se divide en marcas y
contenido. Las marcas pueden ser de dos tipos: etiquetas o
referencias a entidades. Todo lo que no son marcas es contenido.
Elementos (elements)
Un elemento es un componente lógico de un documento que o
bien comienza por una etiqueta de apertura y termina por la
etiqueta de cierre correspondiente o que consiste en una única
etiqueta vacía. El contenido de un elemento es todo lo que se
encuentra entre las etiquetas de apertura y cierre, incluso si estos
son también elementos en cuyo caso se llaman elementos hijos.
Etiquetas (tags)
Una etiqueta es un identificador que empieza por el carácter < y
termina por >. Existen tres tipos de etiquetas:
las etiquetas de apertura (start-tag), que empiezan por el
carácter < y terminan por >. Por ejemplo:
<apartado>
las etiquetas de cierre (end-tag), que empiezan por los
caracteres </ y terminan por >. Por ejemplo:
</apartado>
las etiquetas vacías (empty tag), que empiezan con el
carácter < y terminan por />. Por ejemplo:
<linea />
26.
Atributos (attributes)
Un atributo es un componente de las etiquetas que consiste en
una pareja nombre (name) / valor (value). Se puede encontrar en
las etiquetas de apertura o en las etiquetas vacías, pero no en las
de cierre. En una etiqueta no puede haber dos atributos con el
mismo nombre. La sintaxis es siempre
nombreAtributo="valorAtributo". Por ejemplo:
<profesor nombre="Bartolomé" apellidos="Sintes Marco"
/>
Comentarios (comments)
Un comentario es una etiqueta que comienza por <!-- y acaba
por -->. Los comentarios no pueden estar dentro de otras marcas y
no pueden contener los caracteres "--". Dentro de un comentario
las entidades de carácter no se reconocen, es decir, sólo se pueden
utilizar los caracteres del juego de caracteres del documento. Por
ejemplo:
<!-- Esto es un comentario -->
Declaración XML (XML declaration)
La declaración XML es una etiqueta que comienza por <?xml y
termina por ?> y que proporciona información sobre el propio
documento XML. Aunque no es obligatoria es conveniente que
aparezca, y debe aparecer siempre al principio del documento. No
es una instrucción de procesamiento, pero tiene la misma sintaxis
(empieza por <? y acaba por ?>).
La declaración xml indica el juego de caracteres del documento. El juego
de caracteres que se utiliza en este curso es UTF-8:
<?xml version="1.0" encoding="UTF-8"?>
En XML, el nombre del juego de caracteres se debe escribir en
mayúsculas (UTF-8 en vez de utf-8).
La declaración xml también indica la versión XML utilizada. Aunque
existe la versión XML 1.1, la versión más común sigue siendo la versión
XML 1.0.
27. Se pueden utilizar otros juegos de caracteres, como ISO-8859-1 (Europeo
occidental):
<?xml version="1.0" encoding="ISO-8859-1"?>
Es importante que el juego de caracteres que aparece en la declaración
sea el juego de caracteres en que realmente está guardado el
documento, porque si no el procesador XML puede tener problemas
leyendo el documento
3.6.2 Conceptos Básicos de XSL.
XSL (eXtensible Stylesheet Language) es un lenguaje que permite transformar texto
plano en un formato enriquecido. Se usa para definir la apariencia de los
documentos en pantalla o en papel.
Conceptos básicos de XSL
XSL es el complemento natural de XML.
XSL permite separar los datos (XML) de las instrucciones de procesamiento.
XSL permite crear más de una hoja de estilo.
XSL permite ordenar y filtrar la información.
XSL permite crear o visualizar otros datos derivados a partir del archivo original.
XSLT
XSLT (Extensible Stylesheet Language Transformations) es un lenguaje que permite
transformar documentos XML en otros documentos XML u otros formatos.
Transformación XSLT
La transformación XSLT consiste en crear reglas de traducción (también conocidas
como plantillas) para cada etiqueta XML que se quiere traducir.
Formatos de salida XSLT
Los formatos de salida XSLT pueden ser: Documento de texto, Página web,
Documento HTML, Objeto de formato XSL.
28. 3.6.3 XML transformation.
Parameter Description
InputDocumentName Nonnumeric literal or identifier of an alphanumeric data item that specifies the
document to transform (the input document). If an extension is not specified in t
extension .xml is appended to the specified filename.
StyleSheetName Nonnumeric literal or identifier of an alphanumeric data item that specifies the
stylesheet file to be used for the transformation. If an extension is not specified i
extension .xsl is appended to the specified filename.
OutputDocumentName Nonnumeric literal or identifier of an alphanumeric data item that specifies the
transformed document (the output document). If an extension is not specified in
extension .xml is appended to the specified filename.
Description
The XML TRANSFORM FILE statement transforms the XML document specified
by the InputDocumentName parameter using the XSLT stylesheet specified by
the StyleSheetName parameter into a new document specified by
the OutputDocumentName parameter. The new document may or may not be
an XML document depending on the XSLT stylesheet.
A status value is returned in the data item XML-Status of XML-data-group,
which is defined in the copy file lixmldef.cpy
29. 3.6.4 Mostrando contenido dinámico con
transformación.
El contenido dinámico consiste en una experiencia web personalizada
basada en datos.
De esta forma, el contenido de los sitios web, los emails y otras páginas,
cambia según las actividades del usuario.
Este formato es cada vez más común y tiene como objetivo brindar
una experiencia personalizada para el usuario.
La principal propuesta detrás de los contenidos dinámicos es brindar el
entorno ideal para las personas de acuerdo con su comportamiento.
Por lo tanto, cada vez que alguien visita un sitio web, se monitorea su
actividad en ese entorno.
Algunas interacciones como los clics, las visitas a la página del producto,
los me gusta, las acciones compartidas y entre otros, son puntos posibles
para capturar datos.
El asunto es que este comportamiento indicará una preferencia
específica por ciertos productos y contenidos.
La próxima vez que el usuario visite una página dinámica, los datos
personalizarán completamente el entorno, de acuerdo con la última
interacción.
Asimismo, el usuario recibirá emails con ofertas personalizadas y con su
nombre como destinatario.
Todo esto es posible porque el contenido dinámico es una estrategia
basada en datos.
30. En otras palabras, los datos de navegación serán la base para la próxima
experiencia. De esta forma, el contenido nunca volverá a ser el mismo,
adaptándose constantemente para ser lo más personalizado posible.
3.8 Ventajas y Desventajas de PHP
.
Ventajas de PHP
Vamos primero con las ventajas:
Se trata de un lenguaje multiplataforma . Lo cual quiere decir, que puede funcionar
en diferentes sistemas operativos. Por ejemplo, funciona en Linux, Unix y Windows.
Aceleran el desarrollo de aplicaciones web personalizadas . Es decir, las
herramientas y fragmentos de código que proporcionan los framework de PHP
facilitan que los desarrolladores puedan hacer soluciones web personalizadas de
manera más rápida.
Simplifican el mantenimiento web . En contraste con otros lenguajes, PHP no se
centra en la legibilidad y mantenimiento del código. Gracias al modelo-vista-
controlador (MVC), los desarrolladores pueden mantener interfaces separadas.
No es necesario escribir código adicional . Lo que quiere decir que las funciones
proporcionadas en ciertos framework de PHP facilitan que los programadores
puedan mantener el código fuente de una aplicación web de forma más sencilla.
Eficiente con las bases de datos . Se conecta de manera sencilla a bases de datos
relaciones ampliamente utilizadas, sin necesidad, por ejemplo, de escribir un largo
código en SQL.
Automatiza tareas . Por ejemplo, ciertas tareas que los programadores tienen que
hacer cuando desarrollan una web como el almacenamiento en caché o el mapeo
URL pueden ser automatizadas más fácilmente con PHP.
Además, tiene otras ventajas como que permite realizar
pruebas unitarias de manera eficiente gracias a PHPUnit. Por
otra parte, debido al extenso desarrollo de este lenguaje, puede
reducir los costos de desarrollo significativamente.
Desventajas de PHP
Claro que no es oro todo lo que reluce, entre las desventajas se
encuentran:
31. Debes aprender a utilizar los framework de PHP . Los entornos de trabajo o
framework permiten que los programadores puedan añadir funcionalidades sin
escribir código adicional. Sin embargo, esto supone un esfuerzo extra a la hora de
aprender las utilidades del framework.
La calidad de los frameworks es variable . Aunque la mayoría de entornos de
trabajo son open source y gratuitos, dependiendo de cuál se utilice la calidad
cambiará. Es decir, hay entornos de trabajo que tiene un soporte escaso y lento.
Podría reducir la velocidad de la aplicación web. Muchos entornos de trabajo nos
brindan posibilidades y herramientas sólidas para acelerar un sitio web complejo.
Claro que, para aplicaciones sencillas, no es necesario tener unas funciones tan
avanzadas. Por lo que, en algunos casos, esto podría afectar negativamente al
rendimiento de la web.
Estrategias de seguridad. PHP es uno de los lenguajes de programación menos
seguro. Sin embargo, los desarrolladores pueden prevenir de manera sencilla las
amenazas realizando, por ejemplo, inyecciones de SQL.
32. Conclusion
Se plantean nuevos lenguajes de programación principalmente orientados al desarrollo y
manejo de aplicaciones en la web, entendiendo que el futuro de la tecnología va
enfocada a estos campos.
Muchos de los nuevos lenguajes ya no son manejados en el servidor cliente, si no se
plantea un nuevo campo en el todo se manejara por medio de la nube, toda compilación
o interpretación de código sea la web.
En la época actual se necesita trabajar con lenguajes de programación los cuales
permitan la interoperabilidad entre sistemas operativos, y los lenguajes de programación
que no están enfocados a la web, les falta soporte en esa área.
Actualmente se busca un lenguaje que satisfaga la mayoría de los siguientes parámetros
estabilidad, maneje bases de datos, facilidad para manipular y desarrollar aplicaciones,
altos nivel de seguridad, interoperabilidad y permita el desarrollo de grandes bloques de
código