COMPARTE ESTE ARTÍCULO

En este artículo, te mostraremos cómo crear un formulario en PHP para insertar datos en una base de datos utilizando PDO. El formulario solicitará el nombre, apellidos y carnet de la persona y luego enviará estos datos a un script PHP que gestionará la inserción en la base de datos.

Crear el Formulario HTML

Primero, crearemos un archivo HTML que contendrá el formulario para ingresar los datos de la persona.

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Formulario de Inserción de Personas</title>
</head>
<body>
    <h1>Formulario de Inserción de Personas</h1>
    <form action="gestionar.php" method="post">
        <label for="nombre">Nombre:</label>
        <input type="text" id="nombre" name="nombre" required>
        <br>
        <label for="apellidos">Apellidos:</label>
        <input type="text" id="apellidos" name="apellidos" required>
        <br>
        <label for="carnet">Carnet:</label>
        <input type="text" id="carnet" name="carnet" required>
        <br>
        <input type="submit" value="Enviar">
    </form>
</body>
</html>

Crear el Script PHP para Gestionar el Formulario con PDO

Ahora crearemos un archivo PHP llamado gestionar.php que recibirá los datos del formulario y los insertará en la base de datos utilizando PDO.

<?php
$servername = "localhost"; // Cambia esto si tu servidor de base de datos es diferente
$username = "tu_usuario"; // Cambia esto por tu usuario de base de datos
$password = "tu_contraseña"; // Cambia esto por tu contraseña de base de datos
$dbname = "tu_base_de_datos"; // Cambia esto por el nombre de tu base de datos

try {
    // Crear conexión PDO
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    // Configurar el modo de error de PDO a excepción
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    // Recibir datos del formulario
    $nombre = $_POST['nombre'];
    $apellidos = $_POST['apellidos'];
    $carnet = $_POST['carnet'];

    // Preparar y ejecutar la sentencia SQL
    $sql = "INSERT INTO personas (nombre, apellidos, carnet) VALUES (:nombre, :apellidos, :carnet)";
    $stmt = $conn->prepare($sql);
    $stmt->bindParam(':nombre', $nombre);
    $stmt->bindParam(':apellidos', $apellidos);
    $stmt->bindParam(':carnet', $carnet);

    $stmt->execute();
    echo "Nuevo registro creado exitosamente";
} catch(PDOException $e) {
    echo "Error: " . $e->getMessage();
}

// Cerrar conexión
$conn = null;
?>

Explicación del Código

  1. Formulario HTML:
    • El formulario tiene tres campos: nombre, apellidos y carnet, todos son requeridos.
    • El formulario envía los datos mediante el método POST a gestionar.php.
  2. Script PHP (gestionar.php):
    • Se establece una conexión con la base de datos utilizando PDO.
    • Se configura el modo de error de PDO para que lance excepciones.
    • Se reciben los datos enviados desde el formulario mediante $_POST.
    • Se prepara una sentencia SQL INSERT con parámetros nombrados (:nombre, :apellidos, :carnet) y se vinculan los valores de las variables a estos parámetros.
    • Se ejecuta la sentencia preparada.
    • Si la inserción es exitosa, se muestra un mensaje de éxito; si ocurre una excepción, se muestra un mensaje de error con los detalles.
    • Finalmente, se cierra la conexión a la base de datos.

Conclusión

Utilizar PDO para interactuar con una base de datos en PHP ofrece ventajas como una mayor seguridad y una interfaz unificada para diferentes tipos de bases de datos. Siguiendo estos pasos, podrás crear formularios que gestionen la inserción de datos en tu base de datos de una manera segura y eficiente.

… … …

¡Coméntanos que te ha parecido este artículo al final de la página!

TÚ OPINIÓN IMPORTA


NUESTRAS ÚLTIMAS PUBLICACIONES

Contenido restringido

Acceso de usuarios existentes
   
Registro de un nuevo usuario
*Campo necesario

Categories:

Tags:

Comments are closed

Estado de acceso
ESTADO DE ACCESO
TRADUCTORES
COMPARTENOS
error: CONTENIDO PROTEGIDO