Desarrollo Web Entorno Servidor 2021
![]() |
![]() |
![]() |
Título del Test:![]() Desarrollo Web Entorno Servidor 2021 Descripción: Asignatura de DAW. Ilerna |




Comentarios |
---|
NO HAY REGISTROS |
En el desarrollo web se deben distinguir distintos modelos de programación dependiendo de donde se esté realizando la ejecución de código. Relaciona cada concepto de cada capa con su definición: Tecnología que permite interactuar a un cliente con un servidor, realizando peticiones y respuestas respectivamente, para la gestión y consulta de páginas web de manera dinámica. Tecnología que consiste en mostrar el contenido recibido por el servidor. PARTE 1: Las páginas web estáticas están enfocadas a mostrar una información permanente y no permiten grandes libertades para crear efectos o funcionalidades más allá de los enlaces. Las páginas web dinámicas se construyen haciendo uso de otros lenguajes de programación, con lo cual podemos definir las funciones y características que se deben cumplir de acuerdo con nuestras necesidades. Señala a qué tipo de web pertenece cada una de las siguientes características: Se realizan en HTML. Son más económicas. Su desarrollo es más rápido. Permite mostrar datos de fuentes, tales como una base de datos. El administrador puede modificar el usuario fácilmente. Ofrece la posibilidad de que el usuario modifique la vista. PARTE 2: Las páginas web estáticas están enfocadas a mostrar una información permanente y no permiten grandes libertades para crear efectos o funcionalidades más allá de los enlaces. Las páginas web dinámicas se construyen haciendo uso de otros lenguajes de programación, con lo cual podemos definir las funciones y características que se deben cumplir de acuerdo con nuestras necesidades. Señala a qué tipo de web pertenece cada una de las siguientes características: No contienen datos de páginas web. La actualización de contenidos es costosa. Sin modificaciones. El usuario no interacciona con los contenidos ofrecidos en la página web. Utiliza algún lenguaje de programación. El desarrollo es más complejo, por lo que es más lento y laborioso. Además, el mantenimiento del servidor web también resulta más costoso. Señala de los siguientes tipos de lenguajes cuáles son de entorno servidor. PHP. Perl. Python. ASP. JSP. Servlets. XML. JSON. HTML. JavaScript. A la hora de escribir código, en cualquier lenguaje, es imprescindible elegir cuáles serán las herramientas de construcción de estos ficheros de código. Elegir los programas con los cuales podemos desarrollar lenguaje de tipo servidor (PHP y ASP): Android Studio. Notepad ++. SQL Server. Sublime Text. Visual Studio Code. Developer Tools Xcode 4. Para acceder a un servidor web es necesario que el usuario especifique el recurso al que quiere acceder y, para esto, debe indicar la dirección URI correspondiente. (revisar bien los tipos de mensajes ya que esto se puede actualizar en la actualidad https://developer.mozilla.org/es/docs/Web/HTTP/Methods (Enlaces a un sitio externo.)) Indica si las siguientes afirmaciones sobre la petición de un recurso a un servidor son VERDADERAS: Para que un usuario realice una petición al servidor web debe indicar la URL a la que quiere acceder en el navegador web. El servidor descodifica esta URL para conocer cada uno de los campos de esta dirección, y abre una conexión TCP/IP con el cliente correspondiente. Para que un usuario realice una petición al servidor web debe indicar la URL a la que quiere acceder en el navegador web. El propio navegador descodifica esta URL para conocer cada uno de los campos de esta dirección, y abre una conexión TCP/IP con el servidor correspondiente. Después, es posible el envío de mensajes del protocolo HTTP. Como se verá posteriormente, HTTP tiene nueve tipos de mensajes. Después, es posible el envío de mensajes del protocolo HTTP. Como se verá posteriormente, HTTP tiene cinco tipos de mensajes. Por último, el servidor web devolverá la respuesta correspondiente al servidor y se cerrará la conexión HTTP. Por último, el servidor web devolverá la respuesta correspondiente al cliente y se cerrará la conexión TCP. <!DOCTYPE html> [1] [2] <title></title> [3] [4] <div> <h1>Prueba</h1> <button><a href="index.php">Formulario</a></button> </div> [5] [6] NOTA: Rellena los campos que faltan con lo necesario, incluidos símbolos de cierre y apertura, dejando un espacio entre cada una. JavaServer Pages (JSP) es una tecnología que ayuda a los desarrolladores de software a crear páginas web dinámicas basadas en HTML y XML, entre otros tipos de documentos. JSP es similar a PHP, pero usa el lenguaje de programación Java. Las etiquetas JSP se distinguen por su aparición, enlaza cada tipo de etiqueta que se muestra con su definición: Este tipo de etiquetas se utilizan para indicar al JSP los pasos a seguir para llevar a cabo el procesamiento. Porciones de código, por lo general en lenguaje java, que se ejecutarán una vez la página sea procesada. Sirven para indicar líneas de texto que no serán interpretadas. Es posible visualizarlas en la compilación obtenida como resultado. Determinan las interacciones que se van a realizar, como puede ser la redirección a otra página o especificación de ejecución de un servlet, o la interacción con otros componentes externos. Selecciona los comentarios posibles en PHP. //Comentario de prueba. #Comentario de prueba. /* Comentario de prueba */. <!--Comentario de prueba -->. @Comentario de prueba. /** Comentario de prueba */. Un tipo de dato es un atributo de los datos que indicar la forma en la que un compilador o interprete comprenderá un dato. Los tipos de datos primitivos son los tipos de datos originales propios de un lenguaje de programación. Enlaza los diferentes tipos de datos que podemos dar a una variable con el dato que representa: Carácter. Entero. Real – Coma Flotante. Valor lógico (verdadero o falso). Cadena de caracteres. Dirección de memoria - int. Elige la opción correcta para crear una variable en PHP: &miPrimeraVariable. %miPrimeraVariable. $miPrimeraVariable. #miPrimeraVariable. El desarrollo de una aplicación web trae consigo la programación de muchos elementos que permiten al usuario elegir o ejecutar diferentes acciones, estas deben mostrar un resultado u otro dependiendo de dicha decisión. Viendo el siguiente código, marca la opción que se mostrará en pantalla: <?php $variable1 = 5; $variable2 = 5; if ($variable1 <= $variable2){ echo “La condición del if se ha cumplido”; } else{ echo “La condición del if no se ha cumplido”; } ?>. Ninguna de las respuestas es correcta. La condición del if se ha cumplido. La condición del if no se ha cumplido. Siguiendo con las estructuras condicionales, ahora vamos a ver un ejemplo con switch y case, elige la opción correcta que se mostrará por pantalla: <?php $variable1 = “valor2”; switch ($variable1){ case “valor1”: echo “Case 1 ” ; break; case “valor2”: echo “Case 2 ” ; break; case “valor3”: echo “Case 3 ” ; break; } ?>. Case 3. Case 2. Case 1. No entra en ninguna. Cada iteración en el bucle devolverá un único resultado que volverá a ser evaluado. En caso de satisfacer la condición ejecutará una sentencia o el bucle finalizará. Por el contrario, el resultado volverá a ser evaluado. La sintaxis más empleada es la utilizada por los bucles while o do-while. ¿Cuántas veces se ejecutará esta estructura repetitiva? <?php $a = true; $cont = 0; while ($a == true){ echo “El valor del contador es: ”.$cont; $cont++; if( $cont == 10 ){ $a = false; } } ?>. 10. 8. 9. 11. Este tipo de estructuras son empleadas cuando se conoce o se puede prever el número de iteraciones que se deben realizar. Esto se ejecutará un número de veces ya predeterminado dentro de la sintaxis del bucle, que irá contando el número de ejecuciones como condición de evaluación del bucle. La sintaxis que mejor define estas estructuras es la empleada en los bucles for. Rellena el siguiente código teniendo en cuenta que el bucle se tiene que ejecutar 10 veces y el incremento de esta tiene que ser positivo: <?php for ( [1] = 0; [2]; [3]){ echo “El valor de la variable de control del bucle es: ”.$a; } ?> NOTA: Responde dejando un espacio entre respuesta y respuesta, pero no uses espacios entre etiquetas (ej: $variable=0 NO $variable = 0 ). Además de estructuras que permiten realizar o ejecutar una sentencia un número de veces, es posible hacer uso de estas estructuras para la interpretación y recorrido de un conjunto de resultados obtenidos. Estas estructuras realizan un recorrido por los elementos de una matriz, array, colección u otros elementos independientemente del tamaño de elementos que este contenga. Cuál de estas estructuras utiliza un método correcto para recorrer todas las posiciones del array "a": for ($i = 0; $i < count($a); $i++). for ($i = 0; $i < length($a); $i++). for ($i = 0; $i < indexOf($a); $i++). Las funciones son elementos prácticamente imprescindibles en la totalidad de los lenguajes de programación. Marca como VERDADERO las siguientes afirmaciones sobre las funciones: Para la definición de una función se utiliza la palabra function. Una función tiene que contener parámetros. Las funciones permiten refactorizar el código. La finalización de ejecución de una función es retornar un valor o bien devolver el flujo de ejecución al punto desde el que fue llamado tras la ejecución de una o varias sentencias. Todos los lenguajes utilizan la misma sintaxis para la creación o llamada a una función. En una función solo podemos devolver un tipo de dato boolean. Para poder recuperar los datos enviados por el cliente web existen diferentes métodos. Dos de los más utilizados son GET y POST. Según la documentación oficial de PHP, cuál de las siguientes opciones es correcta para recuperar los datos de un formulario enviados por GET: Ninguna de las respuestas es correcta. $GET_['nombre']. $_GET['nombre']. $GET['nombre']. Cuál de las siguientes opciones es correcta para recuperar los datos de un formulario enviados por POST: $POST['nombre']. $_POST['nombre']. $POST_['nombre']. Ninguna de las respuestas es correcta. Dentro de la navegación en una web es posible que un momento determinado se produzca el paso de una pestaña a otra, o se dé el caso en que se realiza una compra o una transferencia bancaria. Este tipo de acciones obligan a mantener determinados datos o estado de un cliente. En caso contrario no sería posible garantizar que usuario realiza las peticiones en cada momento. Enlaza cada concepto con su definición: Permiten garantizar y controlar que los recursos son ejecutados de manera correcta. Son pequeños archivos que permiten almacenar los datos de sesión asociados a un usuario una vez se ha identificado y validado desde el servidor. Es uno de los aspectos que más problemas e inquietudes genera en los programadores y desarrolladores de los sitios web. Completa, dejando un espacio entre cada respuesta, pero ninguno entre las etiquetas (ej: $variable=0 NO $variable = 0). Elige la opción correcta para crear una galleta (cookie) en el navegador, el valor de esta es proporcionado por el método GET en la URL de llamada a la página: setcookie('usuario', $_GET['usuario']);. setcookie($_GET['usuario']);. setcookie($usuario, 'usuario');. Selecciona el código correcto para que muestre el valor almacenado en una galleta (cookie) del navegador llamada usuario: echo "<h2>". CODIGO ."</h2>";. $_COOKIE['usuario']. $_COOKIE_['usuario']. $COOKIE['usuario']. $GET['usuario']. $POST['usuario']. Indica las afirmaciones FALSAS: Es posible crear una ACL (Acces Control List) que actué de intermediario entre el cliente y la base de datos. Los roles y los grupos de usuarios son muy fáciles de gestionar. Los usuarios pueden tener diferentes roles y permisos. Los permisos y los roles del usuario indicarán al servidor si tiene permiso de acceso sobre los diferentes recursos de la página web. Las cookies pueden leer datos almacenados dentro del equipo de un usuario y realizar instalaciones indeseadas. Las pruebas son el mecanismo por el cual es posible comprobar si una aplicación cumple con las condiciones y requerimientos especificados. Este tipo de pruebas son las que permiten identificar los posibles errores. Elige la afirmación correcta sobre las pruebas unitarias: Aquellas pruebas que se llevan a cabo validando la parte lógica. Aquellas pruebas que se realizan sobre las interfaces o servicios web. Elige la afirmación correcta sobre las pruebas unitarias: Las pruebas unitarias permiten comprobar el comportamiento de partes específicas del código. Las pruebas unitarias permiten comprobar el comportamiento de la aplicación. Las pruebas unitarias permiten comprobar el comportamiento de las partes graficas de la aplicación. Enlaza las diferentes capas con su definición: Capa de presentación. Capa de negocio. Capa de persistencia de datos. En PHP todas las variables comienzan con el símbolo: &. @. %. $. #. ¿En que consiste la tecnología de lenguajes del lado servidor?. Ninguna de las respuesta es correcta. Es una tecnología que consiste en mostrar el contenido recibido por el servidor. Es una tecnología que consiste en procesar las peticiones del cliente mediante scripts en el servidor web que crean páginas web dinámicas. ¿Qué son las pruebas de caja blanca?. Todas las respuestas son falsas. Son aquellas pruebas que se llevan a cabo validando la parte lógica del código. Son aquellas pruebas que se realizan sobre las interfaces o servicios web. ¿Cuál de las siguientes características pertenecen a páginas web estáticas?. Se realizan con HTML y su desarrollo es rápido. Todas son correctas. Son webs más económicas y los usuarios no interaccionan con los contenidos ofrecidos en la página web. Podemos clasificar las variables dependiendo de su vida o duración en la ejecución de un programa (Globales, Locales, Estáticas Locales). Verdadero. Falso. ¿Cuál de los siguientes métodos es utilizado para obtener el numero máximo de elementos que contiene un array?. indexOf(). lenght(). count(). value(). ¿Cuales de las siguientes sintaxis son correctas para recuperar datos que han sido enviados con los métodos POST o GET?. $_GET[‘nombre’] y $_POST[‘nombre’]. $GET_[‘nombre’] y $POST_[‘nombre’]. $GET[‘nombre’] y $POST[‘nombre’]. Para la definición de una función se utiliza la palabra function. Verdadero. Falso. El desarrollo de una página web dinámica ofrece una gran cantidad de posibilidades y una mayor interactividad con el usuario. Para conseguir este resultado de la mejor forma posible es necesario detallar y separar todos los aspectos relativos al diseño de la web y, también, el modelo de negocio. Para ello se utilizan técnicas de diseño por capas o niveles. Enlaza las capas con el concepto correspondiente: Capa que el usuario visualiza y puede interactuar. Se encarga de comunicarse con la capa de negocio. Capa encargada de procesar las peticiones del usuario. Se comunica tanto con la capa de presentación para procesar las peticiones como con la de datos para solicitar información. Capa que se encarga de acceder a los datos almacenados y que mediante los gestores de bases de datos que posee devuelven esos datos a la capa de negocio. Rellena los siguientes campos (en inglés nos pide Ilerna....) en blanco disponibles con los conceptos que correspondan a la numeración que vemos en la imagen: Los controles de servidor Web son un estándar formado por un determinado conjunto de controles con funciones muy específicas. Los controles de servidor Web pueden estar formados por simples controles de formularios tales como botones, labels, textbox y cuadros de texto, o bien por algunos controles de mayor complejidad como las tablas o listas desplegables. Indica si las siguientes afirmaciones sobre los controles del servidor son VERDADERAS: Nos permiten identificar el navegador que estamos utilizando para ofrecer el mejor resultado para el mismo. No permiten la utilización de plantillas de diseño. Controlar los eventos de envío de datos al servidor, determinando cuándo se hacen y qué evento producirá dicha acción. PHP ofrece muy pocas funciones que permiten controlar las conexiones, variables y permisos. El objetivo principal de una web dinámica, y que lo diferencia de una página estática, es ofrecer al usuario un contenido adaptado a cada una de las peticiones que se van realizando. Para dinamizar una página web tenemos varios mecanismos que podemos utilizar, tanto desde lenguajes como JavaScript (JQuery // AJAX), CSS, HTML5 o incluso utilizar variables en PHP para obtener contenido modificado por el usuario o de una BDD. Marca la opción que realiza el siguiente código: <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <title>ILERNA ONLINE</title> <script type="text/javascript"> function miFuncion(){ var altura = window.innerHeight - 280; var alt = altura.toString() + "px"; document.body.style.minHeight = alt; } </script> </head> <body onload="miFuncion()"> </body> </html>. Actualiza el contenido de la capa contenido. Actualiza el tamaño de una capa en la carga. Actualiza la altura mínima del cuerpo de la web en la carga. En las variables de PHP podemos almacenar distintos valores que podemos modificar con las opciones que el lenguaje nos permite (Base de datos, Sesiones, Cookies, etc…), los formularios HTML nos ayudan a realizar el envío de nuevos valores. A partir de este fichero “prueba.php”, ¿qué contendrá la variable “miVariable” al cargar y qué al pulsar en el botón Enviar? <?php $miVariable = 'Valor 1'; if(isset($_POST['valor'])){ $miVariable = $_POST['valor']; } ?> <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <title>ILERNA ONLINE</title> </head> <body> <form action="prueba.php" method="POST"> <input type="text" value="Valor 2" name="valor" /> <input type="submit" /> </form> <div><?php echo $miVariable; ?></div> </body> </html>. Valor 1 y no cambia. Valor 2 al cargar, Valor 1 al Enviar. Valor 1 al cargar, Valor 2 al Enviar. Ninguna respuesta es correcta. Valor 2 y no cambia. Como podemos ver en el siguiente ejemplo, la sintaxis de las instrucciones include y requiere, es la misma y su funcionamiento es exactamente igual. include "cuerpo.php"; require "cuerpo.php"; Entonces, si el funcionamiento es el mismo, ¿Porqué PHP proporciona ambas funciones?. No hay diferencia alguna se mantienen las dos funciones por mantenimiento de funciones antiguas de versiones anteriores de PHP. Porque cuando el include no podía cargar la ruta indicada se genera un error pero el código de la web continua su carga natural, en cambio con el requiere se genera un error y la carga de la web no continua su curso natural sino que se detiene en ese punto del error. Porque la función include se puede reutilizar varias veces en el código de una página web, en cambio requiere solo puede ser utilizado una vez dentro de un mismo documento. Realizan la misma acción, pero la función requiere es más óptima en la carga del fichero, tiene unos tiempos más rápidos de carga de la información. ¿Que es el modelo vista controlador?. Es un patrón de arquitectura que separa la lógica del programa, de la interfaz de usuario y las comunicaciones. Es un patrón de arquitectura que junta las diferentes lógicas de negoció que encontramos en un aplicativo. Ninguna de las respuestas es correcta. Es un framework que no ayuda a mejorar nuestro aplicativo en formato gráfico. Cuales de las siguientes características son ventajas del MVC: Modularización del programa. Mayor facilidad de mantenimiento. Mayor facilidad en el desarrollo. Reutilización de código. Mayor complejidad en la creación de archivos. Instalación costosa. Cuando realizamos una consulta en la BBDD dentro de una arquitectura MVC, está es realizada por el controlador, el cual interactúa con el modelo para obtener una respuesta a la consulta. Verdadero. Falso. El modelo-vista-controlador en una aplicación web real podría relacionarse como: Vista: Conexiones con la base de datos. Modelo: Pulsar sobre un botón de Enviar Controlador: Interfaz de la aplicación. Verdadero. Falso. Completa el siguiente código para que este programa devuelva el resultado “HOME REGISTRARSE CURSOS QUIEN SOMOS” <?php $menu = [1]( 0 => 'HOME', 1 => 'REGISTRARSE', 2 => 'CURSOS', 3 => 'QUIEN SOMOS' ); for ($i = 0; $i < [2] ; $i++) { echo "$menu[3]"; } ?> NOTA: responde en la línea inferior dejando un espacio entre las respuestas ?>. Archivos como htaccess permiten configurar una página web. En este archivo se indica cuáles son las restricciones de seguridad en los directorios o carpetas. Verdadero. Falso. Enlaza las distintas capas con su respectiva definición: Capa de presentación. Capa de negocio. Capa de datos. El patrón Modelo-VistaControlador (MVC) es uno de los más usados en el desarrollo de aplicaciones web, pues está basado en el concepto de separación por capas. Verdadero. Falso. Los controles de servidor Web son un estándar formado por un determinado conjunto de controles con funciones específicas, como el control de los botones de un formulario o el manejo de una lista desplegable. Verdadero. Falso. Dentro de una interfaz web, cuales de las siguientes opciones se pueden considerar del lado del cliente: Navegador web. Switch. Base de datos. Router. Servidor web. Los navegadores usan CSS para poder separar el contenido de la presentación en las páginas web, es decir, organizar los datos de cada una de las tablas que se presentarán en dicha página. Verdadero. Falso. Con el lenguaje PHP podemos controlar características como: Facilidad del lenguaje. Conexiones a BBDD. El diseño. Variables. Permisos. Los controles web proporcionan como resultado un modelo de objetos que, procesados, generan lo que se conoce como DOM. Verdadero. Falso. Las pruebas son el mecanismo por el cual es posible comprobar si una aplicación web cumple con las condiciones y requerimientos especificados. Verdadero. Falso. El archivo robots.txt se almacena en la raíz del servidor para impedir a los buscadores de Internet indexar el contenido. Verdadero. Falso. El dominio es un conjunto de caracteres que mediante un sistema DNS realiza una traducción a una IP que, a su vez, apunta al servidor en el que está alojada la página web. Verdadero. Falso. Dividir el código en funcionalidades intentando aislar unas partes de otras para, en caso de producirse algún fallo, este no sea arrastrado de una parte del código a otra, se conoce con el nombre de: Pruebas unitarias. Pruebas de validación. Pruebas de integración. Pruebas de depuración. Indica cuales de las siguientes opciones son características de los controles del servidor. Controlar los eventos de envío de datos al servidor. Detección automática del explorador. Siempre tiene que ser ejecutado con el mismo navegador. Controlar el sistema operativo del cliente. Plantillas de diseño. Toda creación o desarrollo de una página o aplicación web está ligada a realizar una serie de configuraciones que permitan definir cuáles van a ser sus mecanismos de seguridad y normalmente se realizan en el lado del servidor. Verdadero. Falso. El acceso a base de datos es una de los puntos clave en el desarrollo y construcción de cualquier tipo de aplicación web. La forma en la que se leen, modifican, almacenan y eliminan estos datos puede tener una gran influencia en el rendimiento de una web. Enlaza los diferentes conceptos de tecnologías que permiten el acceso a datos con sus definiciones: Sistema manejador de bases de datos formado por un conjunto de programas que se encarga de gestionar el almacenamiento de una base de datos. Como, por ejemplo, SQL Server, MYSQL o Oracle. Conjunto de métodos o funciones que permiten, mediante un grupo de llamadas, el acceso a determinados servicios de la aplicación web. Cualquier lenguaje que permita interpretar la sintaxis de acceso a datos. Algunos de los más utilizados son PHP, prolog, asp, actionscript, ada, python, pascal, c, basic, java, etc. El mapeo objeto-relacional (ORM) permite relacionar los objetos de una aplicación con su correspondiente tabla en una base de datos relacional. Esto permite abstraer de la complejidad de la programación que esto supone. De esta forma, cada clase en el modelo de dominio tendrá su tabla en el modelo de datos. Es la técnica más extendida y más usada en el desarrollo de aplicaciones web. Existen una gran cantidad de framework que permiten hacer uso de esta técnica como, por ejemplo, Hibernate, Java Persistence, Doctrine. Marca con verdadero las siguientes afirmaciones: El acceso a base de datos es una de los puntos clave en el desarrollo y construcción de cualquier tipo de aplicación web. La creación de una base de datos con sus tablas tiene como objetivo crear nuevos registros en las tablas. Las diferentes tecnologías que permiten el acceso a los datos garantizan un mecanismo de acceso a los datos. El acceso a base de datos nos proporciona los datos estáticos de una aplicación web. La forma en la que se leen, modifican, almacenan y eliminan estos datos puede tener una gran influencia en el rendimiento de una web. En informática se podría definir una conexión a base de datos como la forma en la que un servidor de base de datos y su aplicación cliente se comunican entre sí. Enlaza los diferentes parámetros de una conexión con sus definiciones: Equipo en el que se encuentra instalado el sistema gestor de bases de datos y que, probablemente estará también el intérprete de lenguaje. En ese caso, se denominará localhost. Dato que identifica quién tiene acceso para ejecutar las sentencias SQL y que tendrá asociado una serie de permisos para hacerlo. Clave asociada al nombre de usuario y que permite comprobar la identidad. Nombre de la estructura de almacenaje de información a la que nos queremos conectar. Rellena los diferentes campos en el orden correcto con los siguientes valores (copia y pega de la siguiente lista): base_de_datos localhost usuario contraseña mysqli_connect([1], [2], [3], [4]);. 1. 2. 3. 4. Cuál de las siguientes instrucciones devuelve el texto del mensaje de error de una operación MySQL: mysqli_error(). mysqli_query_error(). mysqli_db_error(). Enlaza los siguientes métodos que devuelven cadenas de texto de información de errores con la definición de estos métodos: Devuelve el último mensaje de error para la llamada más reciente a una función de MySQLi que puede haberse ejecutado correctamente o haber fallado. Devuelve el ultimo código de error de la última llamada mysqli_connect(). Devuelve el último mensaje de error de la última llamada mysqli_connect(). Devuelve el último código de error de la llamada más reciente a una función MySQLi que podrá haberse ejecutado con éxito o haber fallado. Devuelve una cadena que contiene el código de error SQLSTATE del último error. El código de error consiste en cinco caracteres. '00000' significa sin error. En informática se podría definir una conexión a base de datos como la forma en la que un servidor de base de datos y su aplicación cliente se comunican entre sí. De las siguientes sintaxis de conexión cuál de ellas no contiene errores: mysql_conect('localhost', 'bd');. mysqliconnect('localhost', 'usuario', 'contraseña', 'bd');. mysqli_connect('localhost', 'usuario', 'contraseña', 'bd') or die("Error en la conexión " . mysqli_error());. mysql_connect('localhost', 'usuario', 'contraseña', 'bd') or die("Error en la conexión " . mysqli_error());. Cuál de las siguientes opciones sirve para cerrar una conexión a la Base de datos: mysqli_close($conexion);. mysqli_close();. close($conexion);. El uso del lenguaje SQL es un estándar para el acceso a base de datos. Por este motivo es la forma en la que el sistema gestor de la base de datos comprenderá cuáles son las peticiones y conjunto de datos requeridos por el cliente. Marca con VERDADERAS las siguientes opciones: Para la recuperación de datos de la BDD utilizaremos lenguajes de base de datos (Oracle / SQL). Para la recuperación de datos de la BDD utilizaremos lenguaje HTML. Las sentencias de recuperación y edición de información son las recogidas dentro el Data Manipulation Language. Para actualizar datos de una BDD utilizaremos la sentencia SELECT. Para insertar datos en una BDD utilizaremos la sentencia INSERT. La base de datos tiene que ser SQL obligatoriamente. Las sentencias de recuperación y edición de información son las recogidas dentro el Data Manipulation Language. Existen diferentes sentencias dependiendo del tipo de acción que se quiera ejecutar en la base de datos. Enlaza cada tipo de acción con su definición: Permite crear y definir nuevas bases de datos. Permite generar consultas para recuperar, ordenar y filtrar los datos. Define los permisos sobre la base de datos. Que comando SQL tenemos que utilizar para: 1- Obtener filas de una tabla. 2- Actualizar registros o campos de una tabla. 3- Insertar nuevas filas en una tabla. 4- Eliminar un conjunto de datos de una tabla. NOTA: Escribe las 4 respuestas dejando un espacio entre cada una de ellas. Qué líneas del siguiente código contienen errores: 1 <?php 2 $server="localhost"; 3 $db="M07"; 4 $user="root"; 5 $pass=""; 6 7 $conexion = mysqli_connect($server) or die ("Error en la conexión ".mysql_error()); 8 9 $consulta1 = "SELECT nombre FROM usuarios"; 10 $resultado1 = mysqli_query($conexion, $consulta1) or die ("Error al recuperar los datos"); 11 ?> 12 <!DOCTYPE html> 13 <html lang="es"> 14 <head> 15 <meta charset="UTF-8"> 16 <title>ILERNA ONLINE</title> 17 </head> 18 <body> 19 <?php 20 while($extract1 = mysqli_fetch_assoc($resultado1){ 21 echo "<label>".$extract1['nombre']."</label>"; 22 } 23 ?> 24 </body> 25 </html>. 20. 7. 10. 21. ¿Qué líneas del siguiente código contienen errores? 1 <?php 2 3 function crearConexion($database) { 4 $host = "localhost"; 5 $user = "root"; 6 $password = ""; 7 8 $conexion = mysqli_connect($host, $user, $password, $database); 9 10 if (!$conexion) { 11 die("<br>Error de conexión con la base de datos: " . mysqli_connect_error()); 12 } 13 else { 14 echo "<br>Conexion correcta a la base de datos: " . $database; 15 } 16 return $conexion; 17 } 18 19 function getListaCiudades() { 20 $DB = crearConexion("localhost", "root", "", "world"); 21 22 $sql = SELECT ID, Name, CountryCode, District, Population FROM city 23 24 $result = mysqli_query($DB, $sql); 25 26 if (mysqli_num_rows($result) < 0) { 27 return $result; 28 } else { 29 echo "No hay nada en la lista de ciudades."; 30 } 31 } 32 ?>. 26. 22. 24. 20. 8. Tan importante como obtener los datos es saber agruparlos y gestionarlos para, posteriormente, mostrarlos de la mejor manera posible en la interfaz. Enlaza las siguientes sentencias SQL con su definición: Permite agrupar los resultados siguiendo un criterio. De esta forma todos los resultados son filtrados mostrando aquellos que cumplen con el criterio establecido. Puesto que los resultados devueltos pueden contener registros duplicados, esta sentencia nos devuelve valores únicos, es decir, aquellos que son diferentes. Permite ordenar los registros obtenidos como resultado siguiendo un criterio. Esta sentencia permite, a su vez, un parámetro adicional al final de la consulta pudiendo indicar si se desea que la orden se descendiente (desc) o ascendente (asc). Indica el número de registros devueltos o filas de una tabla obtenidas como resultado que cumplan con el criterio establecido. Calculan el valor máximo y mínimo respectivamente de entre todos los registros obtenidos. Cuando se prevé que la cantidad de registros devueltos puede ser muy grande, es posible limitarlos. Esta sentencia es útil cuando el contenido a mostrar en la web es parcial o es necesario que sea paginado. Relaciona las sentencias SQL con la definición del resultado que mostraran en caso de ser ejecutadas: SELECT MIN(edad) FROM usuarios WHERE nombre = 'Ilerna';. SELECT MAX(edad) FROM usuarios WHERE nombre = 'Ilerna';. SELECT COUNT(id) FROM usuarios WHERE id > 0 AND id < 50;. SELECT nombre, apellido FROM usuarios ORDER BY nombre ASC;. SELECT DISTINCT nombre, apellido FROM usuarios;. Marca las siguientes afirmaciones como FALSAS: Con la cláusula DISTINCT la sentencia no devuelve resultados duplicados. Para ordenar resultados de una consulta utilizamos la cláusula GROUP BY. Las sentencias MIN y MAX devuelven el valor mínimo i máximo del campo elegido en la consulta. Con la cláusula ORDER BY el resultado de la sentencia viene agrupado. Cuando tenemos una consulta que devuelve muchos registros estos se pueden limitar con la sentencia LIMIT. La cláusula DISTINCT devuelve solo los registros que están duplicados. Indica si las siguientes afirmaciones son VERDADERAS: El cliente interactúa con formularios HTML para añadir o modificar registros en la BDD. Las consultas SQL se ejecutan desde el formulario HTML. Para validar y procesar la información utilizaremos el lenguaje de programación utilizado. Los formularios HTML utilizan métodos (POST - GET) para enviar la información a archivos que la podrán procesar. En PHP podemos realizar las diferentes consultas SQL para añadir, modificar o eliminar registros en la BDD. Con PHP no podemos establecer conexión a la base de datos, con lo cual no podemos realizar consultas. Diferenciar dos tipos de usuarios, que tipo de usuario tiene cada una de estas definiciones: Serán los encargados de gestionar la información a mostrar previamente para que el usuario la pueda visualizar. Podrán, de forma controlada, añadir registros mediante el envío de formularios u otros campos habilitados para ello. Selecciona las sentencias adecuadas para trabajar con usuarios en la base de datos: Para crear un usuario en el servidor y asignarle una contraseña. Para configurar los permisos de un usuario. Para eliminar un usuario. Elimina permisos concretos de un usuario. Elimina todos los permisos de un usuario. Las transacciones dentro de una base de datos son un conjunto de órdenes cuyas tareas se ejecutan de forma dependiente. Dividen las tareas en bloques asegurando la integridad de los datos, realizando todos los cambios como definitivos cuando todas las instrucciones dentro de esta finalizan correctamente. Marca los conceptos sobre los cuales se ha desarrollado el principio de las transacciones: Corrección. Versatilidad. Durabilidad. Congruencia. Aislamiento. Consistencia. Variabilidad. Atomicidad. Seguridad. SQL provee de una serie de mecanismos relacionados con las transacciones, enlaza cada sentencia SQL con su definición: Indica que va a comenzar una transacción. Indica el final de una transacción que ha resultado correcta. Permite eliminar todas las operaciones realizadas volviendo a un punto estable previo a la realización de una determinada transacción. Enlaza cada valor con la transacción a la cual corresponde: START TRANSACTION; INSERT INTO alumnos (id, nombre) VALUES (0, 'Ilerna'); INSERT INTO alumnos (id, nombre) VALUES (1, 'Online'); COMMIT;. START TRANSACTION; INSERT INTO alumnos (id, nombre) VALUES (0, 'Ilerna'); ROLLBACK;. Ordena las siguientes ordenes SQL para realizar las siguientes ordenes en la base de datos: Crear una tabla de usuarios. Insertar un usuario. Dejar los cambios guardados. Actualizar el usuario. Revertir la actualización. CREATE TABLE `usuarios` ( `id` int(50) NOT NULL, `nombre` varchar(50) NOT NULL, ); ALTER TABLE `usuarios` ADD PRIMARY KEY (`id`);. INSERT INTO usuarios (id, nombre) VALUES (1, 'Ilerna');. COMMIT;. UPDATE usuario SET nombre = 'Online' WHERE id = 1;. ROLLBACK;. Enumera en que líneas del siguiente código tenemos errores: 1 START TRANSACTION 2 INSERT INTO alumnos (id, nombre) VALUES (1, 'Ilerna'); 3 COMMIT; 4 UPDATE alumnos SET nombre WHERE id = 1; 5 DELETE FROM usuarios WHERE id = 1; 6 COMIT;. 1. 2. 3. 4. 5. 6. Enlaza el concepto con su definición: Iniciar una transacción de base de datos, para crear un bloque de sentencias, las cuales podamos finalizar para guardar los cambios o devolver la instrucción a un estado anterior. Finaliza una transacción de base de datos dentro de un sistema gestor de base de datos relacional y poner visibles todos los cambios. Operación que devuelve a la base de datos a algún estado previo. Relaciona cada definición con el término que corresponde: Mecanismo por el cual es posible comprobar si una aplicación web cumple con las condiciones y requerimientos especificados. Permiten comprobar y realizar un seguimiento de la ejecución en tiempo real de dicha aplicación o página web. Dividir el código en funcionalidades, tratando así de aislar unas partes de otras para que, en caso de producirse algún fallo, este no sea arrastrado de una parte del código a otra. El servicio web permiten comunicar diferentes aplicaciones a través de internet, permitiendo un intercambio de información entre ellos. La invocación de estos servicios web requiere del uso de los estándares web. Marca con VERDADERO las siguientes afirmaciones: El servicio web puede ser definido como un conjunto de protocolos que permiten comunicar diferentes aplicaciones a través de internet. Un servicio no está localizado. Un servicio web debe estar accesible desde la red. Los servicios web nacen de la necesidad de comunicar diferentes servicios web que tienen el mismo lenguaje de programación. Es recomendable que un servicio web contenga una descripción de sí mismo. Un servicio web será el medio de comunicación por el que es posible obtener y ofrecer una determinada información a un número elevado de personas de forma dinámica. Identifica las principales características de un servicio web: Da a las aplicaciones la posibilidad de ser ejecutada en múltiples plataformas. Estar bien localizado. Solo accesibles por un único lenguaje de programación. Descripción de sí mismo. Se ejecuta en Windows. Accesible desde la red. El peso no puede ser superior a 3Mb. Indica cuales de las siguientes ventajas de los servicios web son verdaderas: Son independientes de la plataforma y el lenguaje de programación utilizados. No hace falta actualizar ni adaptar el acceso a un servicio web. Permiten establecer un canal de comunicación entre aplicaciones a través de la Web. Su creación tiene un coste muy elevado. La mayoría de sitios web trabajan con servicios web. Son muy versátiles, la cual cosa brinda un gran abanico de oportunidades a diferentes tipos de negocios. Aumentan notablemente el tiempo de desarrollo de las aplicaciones. La comunicación requiere de un elevado coste de computación. El funcionamiento del servicio web es muy sencillo. Los procesos de actualización son muy complejos. Dependiendo del tipo de servicio web creado cuales de los siguientes protocolos podemos utilizar: ICMP. TCP/IP. SOAP. NDP. FTP. REST. ARP. UDDI. SMTP. Enlaza cada protocolo con su definición: Utiliza mensajes XML para el intercambio de información y, a su vez, retornará un XML como documento de respuesta. Es necesario establecer por parámetros los datos requeridos como información. Es una evolución del protocolo XML-RPC. Protocolo utilizado para la transferencia de archivos. Protocolo utilizado para el envío de correos electrónicos. Protocolo para publicar la información de los servicios web. Permite comprobar qué servicios web están disponibles. Mediante el uso de esta arquitectura y el protocolo HTTP proporciona una API de utilización de los métodos asociados a esta arquitectura. Los métodos son (GET, POST, PUT, DELETE). REST es fácil de entender por el protocolo HTTP y hace un mejor uso del ancho de banda. A diferencia de SOAP, no almacena estado por lo que las peticiones no mantienen unos registros de los resultados devueltos anteriormente para otras peticiones. Puedes consultar más información sobre cada uno de los métodos REST en el siguiente enlace: https://restfulapi.net/http-methods/ Enlaza las características con el método al cual pertenezcan: Recupera un recurso. Garantizado para no causar efectos secundarios. Cacheable. Crea un nuevo recurso. Inseguro, llamarlo puede generar dos resultados diferentes. Actualizar un recurso existente. Se usa para la creación de recursos cuando el cliente sabe la URI. Eliminar un recurso. La creación y configuración de un servicio web debe seguir una serie de pasos. Dependiendo del lenguaje utilizado, los pasos a seguir podrán ser consultados en la API correspondiente. Selecciona aquellas opciones que sean pasos a seguir para la creación y puesta en marcha de un servició web: Asegurar los datos. Crear el servicio. Comprobar integridad del código. Comprobación de resultados. Compilar el programa. Interpretar los datos. Configurar la base de datos. Enlaza las definiciones con el archivo al cual corresponde: Define los parámetros de configuración de la base de datos. Ejecuta la conexión con la base de datos. Realiza las consultas SQL, define el formato en que se devuelven los datos y los recoge en una clase. Instancia la clase creada y llama al método correspondiente para almacenar los datos. Indica que parámetros contienen la información que se recibe en este servicio web: <complexType name="NextPositionType"> <sequence> <element name="position" type="gml:DirectPositionType"/> <element name="timeOffset" type="duration"/> </sequence> </complexType>. element. sequence. name. type. Marca con FALSO las siguientes afirmaciones sobre los servicios web: La descripción de un servicio debe documentar las acciones que deben realizar los posibles clientes para comunicarse con el servicio. No es necesario especificar cómo será la comunicación. La descripción de servicio puede contener opcionalmente la dirección asociada a cada punto de entrada del servicio Web XML. La dirección asociada al servicio tiene que ser una URL obligatoriamente. Es necesario especificar cómo será la comunicación, tanto para las de tipo bidireccional como para las unidireccionales. La documentación de las acciones que deben realizar los clientes para comunicarse con el servicio, no ayuda al cliente a prever el resultado que devolverá. La interfaz de un servicio web es uno de los aspectos más importantes. Es la parte que mejor definirá los diferentes tipos de servicio ofrecidos en la aplicación. Cuáles son los lenguajes más utilizados en las interfaces de un servicio web: XML y JSON. HTML y CSS. PHP y ASP. Enlaza los elementos de una fase de pruebas con sus definiciones: Definir los pasos que se deben aplicar durante la ejecución de un servicio. En qué posición de la web se colocarán los elementos de interacción de ejecución de estos servicios. Elementos que encapsularán el nombre o logo que iniciará el evento asociado al servicio. Como, por ejemplo: botón, hipervínculo, etc. Es una buena práctica analizar cómo ha sucedido cada una de las experiencias de navegación de los clientes hasta la petición de un servicio. Esto puede ayudar en la realización de un diseño web más eficiente. Elige las diferentes tecnologías que son empleadas para desarrollar una web dinámica: JSP. XML. CSS. AJAX. HTML. ASP.NET. JSON. ASP. PHP. Enlaza las diferentes librerías enfocadas a la ejecución dentro de la interfaz web con su definición: Es una librería Javascript cuyo objetivo es facilitar al máximo el trabajo con Javascript. Para ello se basa en el objeto que permiten acceder a cualquier elemento de la página web. Una librería Javascript del lado del cliente que permite desarrollar interfaces de usuario. Un framework que combina HTML, CSS y Javascript para crear componentes web. Framework para la creación de web con diseño responsive basado en HTML5 y CSS3. Framework que integra una serie de librerías para el desarrollo del lado del servidor. Revisa el siguiente código y responde a las siguientes preguntas de comprensión: 1 <?php 2 $server="localhost"; 3 $db="M07"; 4 $user="root"; 5 $pass=""; 6 $conexion = mysqli_connect($server, $user, $pass, $db) or die ("Error"); 7 8 $consulta = "SELECT * FROM comentarios"; 9 $resultado = mysqli_query($conexion, $consulta) or die ("Error"); 10 11 if(isset($_POST['Aceptar'])){ 12 $sentencia = "INSERT INTO comentarios(comentario) 13 VALUES ('".$_POST['coment']."')"; 14 15 if(mysqli_query($conexion,$sentencia)){ 16 echo '<h3>Registro insertado correctamente</h3>'; 17 }else{ 18 echo '<h3>Error al insertar.'.mysqli_error($conexion).'</h3>'; 19 } 20 } 21 ?> 22 <!DOCTYPE html> 23 <html lang="es"> 24 <head> 25 <meta charset="UTF-8"> 26 <title>ILERNA ONLINE</title> 27 </head> 28 <body> 29 <div id="list_coments"> 30 <?php 31 while($extract = mysqli_fetch_array($resultado)){ 32 echo "<p>".$extract['comentario']."</p><br/>"; 33 } 34 ?> 35 </div> 36 <h2>Comentarios</h2> 37 <form action="prueba.php" method="POST"> 38 <textarea rows="4" cols="50" name="coment">. ¿En qué líneas de código mostramos los resultados de forma dinámica?. ¿En qué líneas de código dejamos insertar datos para que estos se muestren de forma dinámica?. ¿En qué líneas de código realizamos la conexión a la base de datos, para obtener datos que pueden variar de forma dinámica?. ¿En qué líneas de código insertamos los datos en la base de datos?. El concepto de webs interactivas ha hecho que los usuarios que entran en estos sitios web sean parte involucrada de la creación de contenido, es posible ver este concepto como web colaborativa donde los usuarios pueden añadir contenido en la web (Comentarios, Carrito de la compra, etc…) Para ayudar al dinamismo de estas páginas web tenemos herramientas como las cookies. Las cookies son datos que identifican a un navegador. El navegador almacenará en estos archivos los datos que el servidor le envía, así como el reenvío por parte del navegador de los datos hacia el servidor. Cuál de las siguientes opciones es la correcta para almacenar y gestionar los datos almacenados en las cookies de un navegador en PHP: postcookie(). setcookie(). getcookie(). Cuál de las siguientes opciones es la correcta para mostrar los datos almacenados en las cookies del navegador: $_COOKIE[""]. $COOKIE[""]. COOKIE$[""]. Para poder desarrollar una web dinámica se debe especificar y programar usando una tecnología. Esta determinará cuáles son los requisitos que permitirán ejecutar dicha aplicación. En cuanto a las librerías, su aplicación dependerá de para qué las vamos a necesitar. Busca información en Internet sobre las siguientes librerías y enlaza con sus respectivas definiciones: PChart. OAuth 2.0. PHP Mailer. Cuando se quiere mostrar los datos que han sido enviados desde un determinado enlace es posible hacer uso de métodos que utilizan etiquetas HTML, como puede ser PHP. Esto conlleva una espera en la visualización de los datos, pues es posible que primero hayan de ser validados por el servidor. Cuál de los siguientes formularios es correcto, si queremos enviar los datos al servidor y reenviarlos a la misma página en la que está (formU.php): 1. 2. 3. Marca las siguientes afirmaciones con FALSO: Todos los formularios cuentan con un método de envío. Los datos de los formularios se deben guardar a la base de datos sin validar. El proceso de obtención de los datos de un formulario es muy complejo. El método de envío de los datos del formulario es ejecutado a través de un botón en la interfaz. Es posible añadir estructuras de control que permitan una mejor validación de la información que se va a enviar. Los formularios de envío tienen que contener todos los campos de una tabla para que sean válidos para la base de datos. Una de las características que ofrecen las páginas web dinámicas es la forma en la que estas webs son generadas. A diferencia de una web estática, estas páginas no tienen el contenido ya fijado. Es decir, las páginas que se mostrarán aún no han determinado qué información será la que el usuario verá. Rellena el siguiente código para que este muestre el contenido obtenido de una tabla de la base de datos: $consulta = "SELECT * FROM comentarios"; $resultado = mysqli_query($conexion, [1]) or die ("Error"); while($extract = mysqli_fetch_array([2])){ echo "<p>". [3]['comentario']."</p><br/>"; }. La validación de los campos de un formulario los podemos realizar en puntos distintos de nuestra aplicación: Validación en entorno cliente (HTML5 o JavaScript) Validación de los datos en entorno servidor (PHP) Validación en base de datos Para realizar una validación correcta como mínimo la tenemos que realizar en un punto de los comentados, aunque para un correcto funcionamiento de la aplicación tendríamos que realizar la validación en todos los puntos comentados. Enlaza los conceptos de validación de HTML con su definición: Asegura que el campo sea rellenado. Indica el máximo de caracteres permitidos en el campo. Escribimos un texto predictivo en el campo con los datos que queramos que se introduzcan. Va a limitar los tipos de datos que se pueden introducir. La programación de una aplicación web es un proceso que conlleva el empleo de una gran variedad de tecnologías que deben integrarse. Por lo que el desarrollo de las mismas suele estar dividido en la parte profesional en dos tipos de especialidades. Enlaza los conceptos con su definición: Conlleva el desarrollo de todos los aspectos relacionados con el diseño de la aplicación web y la creación de todas las interfaces con las que interactuará el usuario. Conlleva todo el desarrollo de la lógica de la aplicación que procesará los datos y los almacenará en el lado del servidor. La reutilización de código es un proceso que se debe contemplar durante todo el desarrollo de la aplicación. Todas aquellas funciones o parte de código que sean susceptibles de ser reutilizados en un futuro deben ser correctamente documentados y detallados. En PHP tenemos las funciones las cuales nos ayudaran a reutilizar partes de código. De las siguientes expresiones cuáles son declaraciones correctas de funciones. funcion anadir($nombre,$contrasena,$email,$edad). funcion anadir(). function anadir($nombre,$contrasena,$email,$edad). Cabe destacar que la reutilización de código es un proceso que se debe contemplar durante todo el desarrollo de la aplicación. Verdadero. Falso. Cuales de las siguientes afirmaciones se pueden considerar mecanismos de reutilización de código: Separar las constantes en diferentes ficheros dentro de la estructura MVC de nuestro aplicativo. Utilizar nombres de variables fidedignos para sustituir la documentación del proyecto. Almacenar las constantes en un mismo documento. Utilizar el mínimo de ficheros posible para tener todo el código disponible en el mismo documento. Incluir comentarios en el código que faciliten la documentación de la aplicación y la comprensión de la funcionalidad implementada. Utilizar librerías externas que cumplan con los requisitos de funcionalidad que se desea implementar. Encapsular el código en funciones para utilizarlo en varios sitios del aplicativo. La reutilización de código imposibilita la escalabilidad del proyecto, aunque ofrece otras ventajas que suplen esa necesidad. Verdadero. Falso. Las aplicaciones web híbridas pueden aprovechar funcionalidades de los dispositivos (GPS, Camera, etc...) para interactuar entre ellos y mejorar el aplicativo de forma sustancial y poder reducir costes de desarrollo. Verdadero. Falso. Indica cuales de las siguientes afirmaciones sobre los aplicativos híbridos son verdaderas. Se basan en la combinación entre la versatilidad de un desarrollo web y la integración dentro de un dispositivo. Una única aplicación web es interpretada por diferentes dispositivos a través de un navegador web. Solo un tipo de navegador puede abrir una aplicación web al mismo tiempo. El rendimiento del dispositivo puede verse afectado con el uso de funcionalidades del dispositivo. Las aplicaciones web son más rápidos en la gestión de las funcionalidades de los dispositivos que las aplicaciones nativas. En las aplicaciones híbridas podemos hacer uso de lenguajes propios de desarrollo web como HTML5. El resultado obtenido tras la creación de una web, junto con sus servicios, debe ir acompañada de una documentación. Esta documentación contiene una serie de métodos que indican de qué forma es posible comunicarse con una aplicación externa. Esto es lo que se conoce como una API. Enlaza los siguientes conceptos con su definición: Es una tecnología que, a partir del uso de una serie de protocolos, actúa como canal de comunicación entre dos plataformas diferentes entre sí, permitiendo el intercambio de mensajes entre un cliente y un servidor independientemente del lenguaje de programación de cada uno de ellos. Tipo de software que se codifica en un lenguaje capaz de ser interpretados por los navegadores y que, posteriormente, se encargan de su ejecución. Marca con VERDADERO siguientes afirmaciones: Tras la creación de una web y sus servicios tenemos que realizar documentación para indicar sus métodos y posibles formas de comunicación con la aplicación. Una API nunca incluye especificaciones de cómo manejar todos los tipos de datos que se tendrán dentro de la aplicación. El uso de las API está destinado a los usuarios que visitan de la página web. Una API es una interfaz de programación que facilita y provee el acceso a los métodos creados dentro de un determinado sitio web. Cada API está escrita en un lenguaje de programación concreto. El auge de las redes sociales ha permitido a grandes empresas hacer uso de las API como un mecanismo para permitir que otro tipo de páginas web permitan integrar contenido de páginas web externas. Todos los lenguajes de programación proveen de una serie de funciones para conectar y manejar APIS, pero no tienen un propósito especifico y se pueden usar para otras funcionalidades. De las siguientes afirmaciones indica cuales de ellas son VENTAJAS de los servicios web: Aportan interoperabilidad entre aplicaciones de software independientemente de sus propiedades o de las plataformas sobre las que se instalen. Los servicios web se fundamentan en estándares y protocolos basados en texto que hacen más fácil acceder a su contenido y entender su funcionamiento. Permiten que servicios y software de diferentes compañías ubicadas en diferentes lugares geográficos puedan ser combinados fácilmente para proveer servicios integrados. Para realizar transacciones de datos o información sensible tienen un desarrollo más bajo que los estándares abiertos de computación distribuida. Su rendimiento es bajo si se compara con otros modelos de computación distribuida. Al apoyarse en HTTP, pueden esquivar medidas de seguridad basadas en firewall cuyas reglas tratan de bloquear o auditar la comunicación entre programas a ambos lados de la barrera. Enlaza los siguientes conceptos con su definición: Es el elemento raiz y permite especificar el espacio de nombres del documento target namespace, el nombre, y otros prefijos utilizados en el documento WSDL. Un ejemplo de definición de prefijo es: xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/". Este prefijo especifica que todos los elementos dentro del documento de esquemas con el target namespace "http://schemas.xmlsoap.org/wsdl/" tendrán el prefijo wsdl. Se utiliza para definir los tipos de datos que se intercambiarán en el mensaje. Podemos definir dichos tipos directamente dentro de este elemento, o importar la definición de un fichero de esquema (fichero xsd). La definición de tipos puede verse como las definiciones Java de clase, con variables que pueden ser tipos primitivos o referencias a otras clases u objetos. Los tipos primitivos se definen en los espacios de nombres del Schema y normalmente nos referimos a ellos como built-in types. Éstos incluyen tipos simples tales como string, int, double,. Define los distintos mensajes que se intercambiaran durante el proceso de invocación del servicio. Se deberán definir los mensajes de entrada y salida para cada operación que ofrezca el servicio. Los mensajes muestran descripciones abstractas de los datos que se van a intercambiar. Contiene una colección de una o más operaciones. Para cada operación indica cuáles son los mensajes de entrada y salida, utilizando para ello los mensajes definidos en el apartado anterior. Los portTypes son, por lo tanto, colecciones abstractas de operaciones soportadas por un servicio. Indica el protocolo de red y el formato de los datos para las operaciones de un portType. Los bindings son definiciones concretas de los portTypes. Un portType puede tener múltiples bindings asociados. El formato de datos utilizado para los mensajes de las operaciones del portType puede ser orientado al documento u orientado a RPC. Si es orientado al documento tanto el mensaje de entrada como el de salida contendrán un documento XML. Si es orientado a RPC el mensaje de entrada contendrá el método invocado y sus parámetros, y el de salida el resultado de invocar dicho método, siguiendo una estructura más restrictiva. Define el servicio como una colección de elementos port a los que se puede acceder. Un port se define asociando una dirección de red con un binding, de los definidos en el documento. Dicha dirección de red es la dirección (URL) donde el servicio actúa, y por lo tanto, será la dirección a la que las aplicaciones deberán conectarse para acceder al servicio. Ordena las siguientes partes de código: <input><soap:body use="literal"/></input> <output><soap:body use="literal"/></output>. <operation name="sayHello">. </operation>. <binding type="glossaryTerms" name="b1"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />. </binding>. ¿Cuál es el objetivo de la programación con el modelo cliente-servidor?. Procesar peticiones que manda el cliente en el servidor para crear páginas estáticas. Procesar peticiones que manda el cliente en el servidor para crear páginas dinámicas. Procesar peticiones que manda el servidor en el cliente para crear páginas estáticas. Procesar peticiones que manda el servidor en el cliente para crear páginas dinámicas. ¿Cuál es la forma correcta de acceder al contenido de una variable de sesión?. Ninguna es correcta. $_SESSION["usuario"]. $SESSION["usuario"]. S_SESSION[usuario]. ¿Qué método utilizaremos si queremos enviar la información encapsulada dentro del protocolo HTTP?. HEAD. POST. GET. PUT. En base a este código. Si la cookie ha expirado ¿Qué se muestra por pantalla? if(isset($_COOKIE["usuario"])) { $usuario = $_COOKIE["usuario"]; echo $usuario; } else { echo "No hay usuario"; }. "No hay usuario". El contenido de la cookie. Ninguna de las anteriores. Error al acceder a la cookie. A partir de este código. ¿Cuántas veces se ejecuta el bucle? $var = 1; while ($var < 10){ $var= $var + 5; echo $var; }. 2. 1. 3. 0. ¿Qué es la capa de negocio?. Comunica la capa de presentación con la de datos. Procesa las peticiones del usuario. Solicita información en la base de datos. Ninguna es correcta. En el Modelo-Vista-Controlador ¿de qué se encarga el Modelo?. Todas son correctas. Gestiona la información. De la interfaz del usuario. De las peticiones del usuario. ¿Qué atributo en un formulario define el nombre con el que se envía cada valor?. action en <form>. method en <form>. type en <input>. name en <input>. ¿Qué es una prueba unitaria?. Cuando se divide el código en funcionalidades. Cuando se ejecuta una prueba de una parte concreta del proyecto. Cuando se ejecuta una prueba del proyecto. Cuando se ejecutan pruebas con usuarios reales. ¿Qué realiza esta función?. Ninguna es correcta. Muestra en un desplegable el tipo de usuario. Devuelve el tipo de usuario. Pinta por pantalla el tipo de usuario. ¿Qué hace la siguiente consulta?. Ninguna de ellas es correcta. Selecciona 5 columnas y devuelve ordenadas por UserID. Da error porque no hay ninguna columna que sea $orden. Selecciona 5 columnas y las devuelve ordenadas por el valor de $orden. ¿Qué hace la función mysqli_fetch_assoc()?. Tenemos que especificar qué queremos que nos devuelve para que haga algo. Devuelve sólo la primera posición. Devuelve todo el array cada vez que se ejecuta. Devuelve un elemento del array cada vez que se ejecuta. A partir de este código ¿Qué tenemos en $conexion?. Toda la información de la base de datos. El manejador de la base de datos. El resultado de la consulta de la base de datos. Verdadero o falso si se ha podido establecer la conexión. ¿Qué podemos saber si utilizamos la instrucción mysqli_num_rows($result) > 1 ?. Si la consulta está bien formulada. Si nuestra consulta ha devuelto un resultado. Si nuestra consulta ha devuelto más de un resultado. Si nuestra consulta ha sido errónea. ¿Qué hace esta función?. Devuelve false si coincide usuario y correo y tiene el valor "Enabled" a 1. Devuelve true si coincide usuario y correo y tiene el valor "Enabled" a 1. Modifica el valor de "enabled" en la base de datos. Modifica los valores que coinciden en nomre y correo y devuelve true. ¿Qué es un servicio web?. Ninguna de las opciones es correcta. Una aplicación que conecta dos ordenadores. Conjunto de protocolos que permiten comunicar aplicaciones a través de internet. Todo aquello que instalamos en un servidor y tenemos disponibles para usar. ¿Cuál de las siguientes es una característica de REST?. Todas son correctas. Usa sistemas de cachés para no realizar las mismas peticiones. Es simple de implementar y escalable. Fácil de entender por HTTP y mejor uso del ancho de banda. ¿Cuál de los siguientes lenguajes se utiliza para las descripciones de los servicios web?. HTML. XML. WSDL. JSON. A partir de este código ¿Cuál sería el contenido de salida.xml?. <examen><nuevo>Voy a aprobar</nuevo></examen>. <examen><nuevo>Voy a suspender</nuevo></examen>. <examen><creado>Voy a aprobar</creado></examen>. <examen><creado>Voy a suspender</creado></examen>. En SOAP el mensaje que se desea enviar viene encapsulado en un TXT, este mensaje incluye el nombre del método al que se hace la petición pero sin los argumentos. Verdadero. Falso. El intérprete del lenguaje instalado en el servidor será el encargado de transformar la información del usuario en la obtención de la información asociada a dicha petición. Verdadero. Falso. Los servicios web se comunican mediante el uso de mensajes bajo el protocolo HTTP y mediante el uso del lenguaje XML. Verdadero. Falso. El servicio web puede ser definido como un conjunto de protocolos que permiten comunicar diferentes aplicaciones a través de Internet, permitiendo un intercambio de información entre ellos. Verdadero. Falso. Enlaza los diferentes protocolos con su respectiva definición: SOAP. FTP. UDDI. REST. Indica cuales de las siguientes opciones son pasos para la puesta en marcha de un servicio web: Archivo de finalización. Archivo de conexión. Configurar la base de datos. Generar usuarios de control. Destruir la base de datos. Archivo de petición. Crear el servicio. Archivo de resultados. Archivo de configuración. ¿Cuáles de las siguientes opciones son características de un servicio web?. Un servicio web debe estar accesible desde la red. Un servicio web no consta de una descripción de si mismo. Es recomendable que un servicio web contenga una descripción de sí mismo. Un servicio debe de estar bien localizado. Un servicio web debe estar registrado y accesible en local. Un servicio web no necesita de protocolo HTTP. Rellena los huecos del siguiente código con las funciones para trabajar con archivos de texto necesarias para que la siguiente función sea correcta: function crearArchivoTxt(){ include 'conexion.php'; if(!file_exists('txt/informe.txt')){ $txt = [1]('txt/informe.txt', 'w'); $hoy = date("d")."-".date("m")."-".date("Y"); $res = $conexion-> [2]("SELECT email, f_nacimiento FROM usuarios"); $res->execute(); $res->store_result(); $res->[3]($email, $fecha_nac); fwrite($txt, "INFORME DE ACTUALIZACIONES DE USUARIOS".PHP_EOL); fwrite($txt, " Fecha Creación: ".$hoy." ".PHP_EOL.PHP_EOL); while($res-> [4] ){ fwrite($txt, "Correo: ".$email.PHP_EOL.PHP_EOL); fwrite($txt, "Fecha nacimiento: ".$fecha_nac.PHP_EOL.PHP_EOL); } fclose([5]); } } NOTA: Responde en la línea inferior dejando un espacio entre cada respuesta. Para poder ejecutar una aplicación es necesario publicar el dominio en Internet para que este sea accesible desde una web. O bien es posible ejecutar dicha aplicación para uso personal dentro de un equipo. Para ello será necesario que el ordenador actúe, a su vez, de servidor donde se alojará dicha aplicación. Verdadero. Falso. |