If you are receiving errors like:
Warning: mysql_close(): 5 is not a valid MySQL-Link resource
Check that you are calling mysql_error() and mysql_errno() BEFORE you call mysql_close().
(PHP 4, PHP 5)
mysql_errno — Devuelve el valor numérico del mensaje de error de la última operación MySQL
Esta extensión fue declarada obsoleta en PHP 5.5.0 y eliminada en PHP 7.0.0. En su lugar debería utilzarse las extensiones MySQLi o PDO_MySQL. Véase también la guía MySQL: elegir una API. Las alternativas a esta función son:
Devuelve el número de error de la última función MySQL.
Los errores que provienen del procesamiento de la base de datos MySQL ya no emiten advertencias. En su lugar, utilice mysql_errno() para recuperar el código de error. Tenga en cuenta que ésta función solamente devolverá el código de error de la función MySQL ejecutada mas recientemente (sin incluir a mysql_error() y mysql_errno()), por lo que, si se quiere usar, hay que asegurarse de revisar el valor antes de llamar otra función MySQL.
link_identifier
La conexión MySQL. Si no
se especifica el identificador de enlace, se asume el último enlace abierto
por mysql_connect(). Si no se encuentra este enlace, se
intentará crear un nuevo enlace como si mysql_connect() hubiese sido invocada
sin argumentos. Si no se encuentra o establece ninguna conexión, se genera un error
de nivel E_WARNING
.
Devuelve el número de error de la última función de MySQL, o
0
(cero) si no ha ocurrido ningún error.
Ejemplo #1 Ejemplo de mysql_errno()
<?php
$enlace = mysql_connect("localhost", "usuario_mysql", "contraseña_mysql");
if (!mysql_select_db("bd_inexistente", $enlace)) {
echo mysql_errno($enlace) . ": " . mysql_error($enlace). "\n";
}
mysql_select_db("kossu", $enlace);
if (!mysql_query("SELECT * FROM tabla_inexistente", $enlace)) {
echo mysql_errno($enlace) . ": " . mysql_error($enlace) . "\n";
}
?>
El resultado del ejemplo sería algo similar a:
1049: Unknown database 'bd_inexistente' 1146: Table 'kossu.tabla_inexistente' doesn't exist
If you are receiving errors like:
Warning: mysql_close(): 5 is not a valid MySQL-Link resource
Check that you are calling mysql_error() and mysql_errno() BEFORE you call mysql_close().
All mysqld error messages are located into the file /usr/local/share/mysql/english/errmsg.txt and listed in numerical order from 999 to 1175. You can change the output language as well, issuing the '-L spanish' option for example. See the manual for more details.