Contamos con la mejor solución que descubrimos online. Deseamos que te sea de mucha utilidad y si deseas aportar algo que nos pueda ayudar a crecer siéntete libre de hacerlo..
Solución:
los execute()
método devuelve un boolean
… así que solo haz esto:
if ($stmt->execute())
// it worked
else
// it didn't
Verifique el valor de retorno de $stmt->execute()
if(!$stmt->execute()) echo $stmt->error;
Tenga en cuenta que la línea de código ejecuta el comando execute(), así que utilícelo en lugar de su $stmt->execute() actual, no después.
Simplemente revise las páginas del manual de cualquier función que esté usando:
prepare() – devuelve un objeto de declaración o
FALSE
si ocurriera un error.
bind_param() – DevolucionesTRUE
en el éxito oFALSE
en el fracaso.
ejecutar() – DevolucionesTRUE
en el éxito oFALSE
en el fracaso.
close() – DevolucionesTRUE
en el éxito oFALSE
en el fracaso.
En la práctica, sin embargo, esto se vuelve molesto y es propenso a errores. Es mejor configurar mysqli para lanzar excepciones en caso de error y deshacerse de todo el manejo de errores específico, excepto en las pocas ocasiones en las que se espera un error (por ejemplo, una inserción tentativa que podría violar una restricción única):
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
Recuerda algo, que tienes autorización de agregar una reseña si te fue de ayuda.