Cómo manejar los errores de mysql

Utilice las funciones mysqli del lenguaje PHP, tales como mysqli_connect y mysqli_query, para interactuar con la base de datos MySQL. Las cosas van a ir mal a veces cuando se utiliza las declaraciones. Es posible hacer que un error en su escritura, tales como escribir mal el nombre de la base de datos. A veces, los problemas surgen que no se puede evitar, como la base de datos o la red de estar abajo.

Es necesario incluir código en el script que se encarga de las situaciones de error.

Por lo general, quiere hacer el manejo más descriptivo para ayudar a solucionar los problemas durante el desarrollo de su error, pero no desea que la información adicional que se muestra al público.

Por ejemplo, supongamos que está utilizando una cuenta llamada root para acceder a su base de datos y haces un error tipográfico, como en las siguientes afirmaciones:

$ Host = "localhost"- $ user = "putrefacción"- $ password = "- $ cxn = mysqli_connect ($ host,psusuario,pscontraseña)

Debido a que escribe “rot” en lugar de “raíz”, se muestra un mensaje de advertencia similar al siguiente:

Video: Error de conexion mysql workbench

Advertencia: Acceso denegado para el usuario: `pudrición @ localhost` (usando la contraseña: NO) ...

El mensaje de error anterior contiene la información que necesita para averiguar el problema - que muestra su nombre de cuenta que incluye el error tipográfico.

Sin embargo, después se ejecuta un script y los clientes están utilizando, usted no quiere que vean los usuarios un mensaje de error técnico que muestra su ID de usuario. Desea activar los errores de PHP fuera o enviarlos a un archivo de registro de errores. A continuación, podría utilizar una morir declaración para detener la secuencia de comandos y muestra un mensaje amable con el usuario, de la siguiente manera:

$ Cxn = mysqli_connect ($ host,psusuario,pscontraseña) o troquel ("El catálogo no está disponible en este momento. Por favor, inténtelo de nuevo más tarde.") -

Cuando un mysqli_query () función falla, MySQL devuelve un mensaje de error que contiene información sobre la causa de la falla. Sin embargo, este mensaje no se muestra a menos que muestre específicamente. Una vez más, es posible que desee ver estos mensajes cuando se está en desarrollo el guión, pero puede que no desee para mostrarlos al público. Se puede visualizar el error de MySQL que se devuelve mediante la siguiente función:

Video: Crear Base de Datos MYSQL en PhpMyAdmin usando XAMPP Server

mysqli_error ($ cxn)

Por ejemplo, podría incluir la función en el código, de la siguiente manera:

$ Query = "* SELECT Cust"- $ resultado = mysqli_query ($ cxn, $ consulta) o morir ("Error: ".mysqli_error ($ cxn)) -

En este ejemplo, si la llamada a la función falla, el morir declaración muestra el error de MySQL, que puede ser algo como esto:

Video: 2# Taller Algoritmo - Creación de clase de manejo de errores [PHP-MySQL]

no existe la tabla `catalog.cust`: error

De vez en cuando, es posible que desee realizar acciones adicionales si la función falla, tales como eliminar variables o cerrar la conexión de base de datos. Puede llevar a cabo este tipo de acciones mediante el uso de una declaración condicional:

(! $ Resultado = mysqli_query ($ cxn, $ consulta)) {echo si mysqli_error ($ cxn) -unset ($ auth) -exit () -}

Si la llamada función falla, las declaraciones de la Si bloque se ejecutan. los eco declaración muestra el error de MySQL devuelto por la función. Una variable se elimina, y el script finaliza.

Note la ! (Signo de exclamación) en el Si declaración. ! medio no. En otras palabras, el Si afirmación es cierta si la instrucción de asignación no es cierto.

Artículos Relacionados