errno
En este artículo, nos centraremos en la función mysqli_errno() de PHP, que devuelve el código de error numérico de la última operación de MySQLi. Proporcionaremos una descripción general de la función, su funcionamiento y ejemplos prácticos.
Introducción a la función mysqli_errno()
La función mysqli_errno() es una función integrada de PHP que devuelve el código de error numérico de la última operación de MySQLi. Es útil cuando necesitas manejar errores en tu código MySQLi y tomar las acciones adecuadas en función del código devuelto.
Cómo usar la función mysqli_errno()
El uso de la función mysqli_errno() es sencillo. Requiere un objeto de conexión MySQLi válido como parámetro. Aquí tienes un ejemplo:
¿Cómo usar la función mysqli_errno()?
<?php
$mysqli = mysqli_connect("localhost", "username", "password", "database");
if (!$mysqli) {
die("Connection failed: " . mysqli_connect_error());
}
$query = "SELECT * FROM my_table";
$result = mysqli_query($mysqli, $query);
if (!$result) {
$error_code = mysqli_errno($mysqli);
echo "Failed to execute query. Error code: " . $error_code;
exit();
}
mysqli_close($mysqli);
?>En este ejemplo, primero verificamos que la conexión se haya realizado correctamente. Luego ejecutamos una consulta utilizando la función mysqli_query() y almacenamos el resultado en una variable. Comprobamos si hubo un error en la consulta mediante la condición !$result. Si hubo un error, llamamos a mysqli_errno($mysqli) para obtener el código de error numérico asociado a la última operación de MySQLi. Finalmente, mostramos el código de error y salimos del script.
Uso avanzado
La función mysqli_errno() también puede utilizarse en escenarios más avanzados. Cuando se trabaja con múltiples conexiones, debes pasar el objeto MySQLi específico a la función para recuperar el código de error de esa conexión en particular. Aquí tienes un ejemplo:
Uso avanzado de PHP mysqli_errno()
<?php
$mysqli1 = mysqli_connect("localhost", "username", "password", "database1");
$mysqli2 = mysqli_connect("localhost", "username", "password", "database2");
if (!$mysqli1 || !$mysqli2) {
die("One or more connections failed.");
}
$query = "SELECT * FROM my_table";
$result1 = mysqli_query($mysqli1, $query);
$result2 = mysqli_query($mysqli2, $query);
if (!$result1) {
$error_code = mysqli_errno($mysqli1);
echo "Failed to execute query on connection 1. Error code: " . $error_code;
exit();
}
if (!$result2) {
$error_code = mysqli_errno($mysqli2);
echo "Failed to execute query on connection 2. Error code: " . $error_code;
exit();
}
mysqli_close($mysqli1);
mysqli_close($mysqli2);
?>En este ejemplo, creamos dos objetos MySQLi y nos conectamos a dos bases de datos MySQL diferentes. Luego ejecutamos la misma consulta utilizando cada conexión y almacenamos el resultado en una variable. Comprobamos si hubo un error en cada consulta mediante la condición !$result. Si hubo un error, llamamos a mysqli_errno() para el objeto MySQLi correspondiente y obtenemos el código de error asociado a esa conexión específica. Finalmente, mostramos el código de error y salimos del script.
Nota:
mysqli_errno()devuelve únicamente un código numérico. Para obtener un mensaje de error legible por humanos, utiliza la función complementariamysqli_error($mysqli). Los códigos de error de MySQL más comunes incluyen1045(Acceso denegado) y1049(Base de datos desconocida). Consulta la documentación oficial de códigos de error de MySQL para obtener una lista completa.
Conclusión
En conclusión, la función mysqli_errno() es una herramienta útil para manejar errores en tu código MySQLi y tomar las acciones adecuadas en función del código devuelto. Al verificar las conexiones, pasar el objeto de conexión correcto e interpretar los códigos numéricos, puedes crear consultas MySQLi más robustas y flexibles.
Práctica
¿Qué hace la función errno de PHP?