Prueba de conocimiento UT 06¶
Parte 1: Preguntas tipo test¶
-
¿Cuál de las siguientes funciones PHP se usa para almacenar datos en un archivo?
- a.
fwrite()
- b.
file_hash()
- c.
store_data()
- d.
save_file()
- a.
-
¿Qué función de PHP permite cifrar contraseñas antes de almacenarlas?
- a.
md5()
- b.
password_hash()
- c.
sha1()
- d.
bcrypt_encrypt()
- a.
-
¿Qué constante se usa con
password_hash()
para aplicar el algoritmo bcrypt?- a.
HASH_BCRYPT
- b.
BCRYPT_DEFAULT
- c.
PASSWORD_BCRYPT
- d.
DEFAULT_BCRYPT
- a.
-
¿Cuál es el método correcto para abrir un archivo en modo lectura en PHP?
- a.
open("archivo.txt", "read")
- b.
fopen("archivo.txt", "r")
- c.
file_get("archivo.txt", "r")
- d.
file_read("archivo.txt")
- a.
-
¿Qué extensión PHP proporciona una interfaz orientada a objetos para bases de datos?
- a.
mysqli
- b.
mysql_connect
- c.
PDO
- d.
sqlite3
- a.
-
¿Cuál es la función de
lastInsertId()
en PDO?- a. Devuelve el ID más grande de la tabla
- b. Devuelve el último ID insertado en una tabla
- c. Elimina el último registro insertado
- d. Recupera todos los registros
-
¿Qué propiedad se utiliza para que PDO lance excepciones en caso de error?
- a.
PDO::THROW_EXCEPTION
- b.
PDO::ERRMODE_EXCEPTION
- c.
PDO::MODE_THROW
- d.
PDO::ERROR_EXCEPTION
- a.
-
¿Qué comando SQL se usa para modificar datos existentes?
- a.
SELECT
- b.
INSERT
- c.
UPDATE
- d.
ALTER
- a.
-
¿Cuál es una característica de las transacciones?
- a. Ejecutan solo una sentencia a la vez
- b. No garantizan integridad de datos
- c. Se pueden confirmar o revertir
- d. Solo se usan con archivos CSV
-
¿Qué hace el método
prepare()
en PDO?- a. Valida datos
- b. Crea una plantilla de consulta SQL
- c. Ejecuta directamente la consulta
- d. Abre una conexión con la base de datos
-
¿Cuál es el modo adecuado para trabajar con archivos binarios?
- a.
wb+
- b.
rb+
- c.
ab+
- d. Todas las anteriores
- a.
-
¿Qué comando SQL se usa para eliminar registros?
- a.
DROP
- b.
TRUNCATE
- c.
DELETE
- d.
REMOVE
- a.
-
¿Cuál es la función de
password_verify()
?- a. Generar contraseñas seguras
- b. Comparar una contraseña en texto con una cifrada
- c. Cifrar contraseñas
- d. Validar emails
-
¿Qué tipo de persistencia usarías para guardar imágenes?
- a. Sesiones
- b. Ficheros
- c. API
- d. Variables en memoria
-
¿Cuál de estas funciones sirve para recuperar datos de una tabla?
- a.
SELECT
- b.
GET
- c.
RETRIEVE
- d.
FETCH
- a.
-
¿Cuál de estas es una ventaja de usar sentencias preparadas?
- a. Aumentan el tamaño de las consultas
- b. Permiten evitar inyecciones SQL
- c. Hacen la base de datos más lenta
- d. Permiten ejecutar código JavaScript
-
¿Qué significa ACID en el contexto de transacciones?
- a. Atomicidad, Consistencia, Integridad, Dependencia
- b. Autenticación, Conexión, Integridad, Durabilidad
- c. Atomicidad, Consistencia, Aislamiento, Durabilidad
- d. Asincronía, Conectividad, Interfaz, Datos
-
¿Cuál de las siguientes instrucciones permite realizar una búsqueda parcial en SQL?
- a.
SEARCH
- b.
FIND
- c.
LIKE
- d.
CONTAINS
- a.
-
¿Para qué sirve el método
fetchAll()
en PDO?- a. Ejecuta una consulta
- b. Recupera todos los resultados como array
- c. Lanza una excepción
- d. Inserta todos los registros
-
¿Qué modo de apertura se usa para escribir en un archivo sin sobrescribirlo?
- a.
w
- b.
r+
- c.
a
- d.
x
- a.
Parte 2: Ejercicio práctico¶
Mini aplicación e-commerce con autenticación y gestión de productos. Se han de generar las siguientes clases.
- Base de datos
Crea una base de datos con las siguientes tablas (puedes hacerlo desde phpMyAdmin o script SQL):
usuarios
:id
,nombre
,usuario
,password
,email
productos
:id
,nombre
,precio
,stock
-
Registro y Login (PDO)
- Formulario de registro que guarda datos usandopassword_hash()
- Formulario de login que verifica conpassword_verify()
- Manejo de sesiones para mantener al usuario logueado -
Gestión de productos (CRUD con PDO)
- Mostrar listado de productos
- Permitir añadir, editar y eliminar productos (mínimo nombre y precio)