En este corto post te mostraré cómo obtener el id que ha ocupado el último elemento insertado en una tabla de SQL usando el lenguaje de programación PHP y el driver PDO.
Obtener el último id insertado con PDO y PHP sirve para cuando necesitamos, por ejemplo, hacer relaciones de tablas o imprimir el id tan pronto se haya insertado el registro.
Para lograr esto vamos a usar el método lastInsertId
.
Para que esto funcione debemos tener un objeto PDO, por ejemplo:
<?php
$contraseña = "";
$usuario = "root";
$nombre_base_de_datos = "ventas";
try {
$base_de_datos = new PDO('mysql:host=localhost;dbname=' . $nombre_base_de_datos, $usuario, $contraseña);
} catch (Exception $e) {
echo "Ocurrió algo con la base de datos: " . $e->getMessage();
}
?>
Después podemos preparar una sentencia y ejecutarla, o simplemente hacer la inserción. Lo importante es invocar a lastInsertId
desde el objeto de PDO.
<?php
$sentencia = $base_de_datos->prepare("insert into cortes(idUsuario, fecha, total) values(?,?,?)");
$sentencia->execute([$idUsuario, $fechaCorte, $total]);
# Aquí el último ID:
$id = $base_de_datos->lastInsertId();
Como ves en la línea 5 estoy obteniendo el último id insertado, en este ejemplo es con la tabla llamada cortes
.
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta semana estuve recreando la API del plugin para impresoras térmicas en Android (HTTP a…
Hoy te enseñaré a extraer la cadena base64 de una clave PEM usando una función…
Encender un foco con un Bot de Telegram es posible usando una tarjeta como la…
Esta web usa cookies.
Ver comentarios
Tengo una duda, son necesarios los otros datos que se piden de la tabla como fecha y total para el funcionamiento del código? Si lo son, como los añado a la base de datos, pues con que especificaciones. Espero se haya entendido la pregunta, gracias.
Hola. No, no es necesario, ese fue mi ejemplo con mis campos, usted puede tener otros datos, solo debe adaptar el código