Leer Archivos de Base de Datos

Formulario simple para acceder a datos guardados

Es imprescindible haber leído todos los Links de la columna PHP de la tabla de entrada.

Como leer archivos de una Base de Datos

Formulario simple de entrada

Nombre de Usuario:
Contraseña:

Este formulario simple, (como tal incompleto), sirve para que el Usuario o el programador pueda acceder a los archivos guardados con su nombre y clave.

La acción del Formulario (action) va dirigida a reciberegistrouno.php.

Enviamos dos variables a ser recibidas: "nombre" y "password".

Lo llamo formulario simple ya que faltan los script de validación, y 'un montón de cosas más...'

Pregunta Juan el Pregunton:

¿Para que esta página funcione, hago doble click sobre ella..?

No, no, y nooo...(el profesor le pega a Juan con el puntero en el Enter), esta página debe ser llamada así:

localhost/ejemplos/enviaregistrouno.html

Pregunta otra vez Juan, (con voz compunguida):

Pero..., si es un HTML, ¿por qué no puedo...?

(Al profesor se le hincha la panza y se le cae el último pelo...), y responde:

Profesor y Juan discutiendo

¡Porque va dirigida a un archivo PHP y este solo funciona en un servidor Local ó Remoto...., se entendió!

Código de reciberegistrouno.php (Versión Moderna)

Este es el código PHP que procesa el formulario y lee los archivos:

<?php // PHP MODERNO (7+) - Con sanitización y verificación $nombre = $_POST['nombre'] ?? ''; $password = $_POST['password'] ?? ''; // Sanitizar los datos para prevenir XSS $nombre = htmlspecialchars($nombre); $password = htmlspecialchars($password); // Convertir a minúsculas para coincidir con la base de datos $nombre = strtolower($nombre); // Ruta al archivo de datos $archivo = "bases/$nombre/$nombre.txt"; if (file_exists($archivo)) { // Leer el contenido del archivo $contenido = file_get_contents($archivo); // Mostrar el contenido echo "<h3>Datos del usuario: $nombre</h3>"; echo "<div style='background: #f5f5f5; padding: 15px; border-radius: 5px;'>"; echo nl2br(htmlspecialchars($contenido)); echo "</div>"; } else { echo "<div style='background: #f8d7da; color: #721c24; padding: 15px; border-radius: 5px;'>"; echo "<h3>Error: Usuario no encontrado</h3>"; echo "<p>El usuario '$nombre' no existe en la base de datos.</p>"; echo "</div>"; } ?>

Este código PHP moderno incluye:

Alternativa en PHP5 (solo para visualización)

Esta es la versión del código en PHP5 que podría haberse utilizado:

<?php // PHP5 - Sin sanitización adecuada $nombre = $_POST['nombre']; $password = $_POST['password']; // Convertir a minúsculas $nombre = strtolower($nombre); // Ruta al archivo de datos $archivo = "bases/$nombre/$nombre.txt"; if (file_exists($archivo)) { // Leer el contenido del archivo $contenido = file_get_contents($archivo); // Mostrar el contenido - SIN SANITIZACIÓN (vulnerabilidad XSS) echo "<h3>Datos del usuario: $nombre</h3>"; echo "<div>"; echo nl2br($contenido); echo "</div>"; } else { echo "<h3>Error: Usuario no encontrado</h3>"; echo "<p>El usuario '$nombre' no existe en la base de datos.</p>"; } ?>

Este código PHP5 muestra las diferencias con la versión moderna:

Bajar código:

Descargar enviaregistrouno.txt

(Según el navegador que use, podría ocurrir que en lugar de bajarlo al archivo, muestre su código en forma de texto, en ese caso copiar y pegar en un Editor de Texto y salvar como enviaregistrouno.html)

Volver al Inicio