Función PHP mysqli_stmt_error ()

Definición y uso

los mysqli_stmt_error() La función devuelve la descripción del error ocurrido durante la ejecución de la última instrucción.

Sintaxis

mysqli_stmt_error($stmt)

Parámetros

No Señor Descripción de parámetros
1

stmt(Mandatory)

Este es un objeto que representa una declaración.

Valores devueltos

La función PHP mysqli_stmt_error () devuelve un valor de cadena que representa la descripción del error ocurrido durante la ejecución de la última declaración. Si no hay errores, esta función devuelve una cadena vacía.

Versión PHP

Esta función se introdujo por primera vez en PHP Versión 5 y funciona en todas las versiones posteriores.

Ejemplo

El siguiente ejemplo demuestra el uso de la función mysqli_stmt_error () (en estilo procedimental):

<?php
   $con = mysqli_connect("localhost", "root", "password", "mydb");

   mysqli_query($con, "CREATE TABLE myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))");
   print("Table Created.....\n");
   mysqli_query($con, "INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'India')");
   print("Record Inserted.....\n");

   $stmt = mysqli_prepare($con, "SELECT * FROM myplayers");

   mysqli_query($con, "DROP TABLE myplayers");

   //Executing the statement
   mysqli_stmt_execute($stmt);

   //Error 
   $error = mysqli_stmt_error($stmt);
   print("Error : ".$error);

   //Closing the statement
   mysqli_stmt_close($stmt);

   //Closing the connection
   mysqli_close($con);
?>

Esto producirá el siguiente resultado:

Table Created.....
Record Inserted.....
Error : Table 'mydb.myplayers' doesn't exist

Ejemplo

En el estilo orientado a objetos, la sintaxis de esta función es $ con -> error . A continuación se muestra el ejemplo de esta función en estilo orientado a objetos:

<?php
   //Creating a connection
   $con = new mysqli("localhost", "root", "password", "mydb");

   $con -> query("CREATE TABLE myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))");
   print("Table Created.....\n");
   $con -> query("INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'India')");
   print("Record Inserted.....\n");

   $stmt = $con ->prepare("SELECT * FROM myplayers");

   $con ->query("DROP TABLE myplayers");

   //Executing the statement
   $stmt->execute();

   //Error
   $error = $stmt ->error;
   print("Error: ".$error);

   //Closing the statement
   $stmt->close();

   //Closing the connection
   $con->close();
?>

Esto producirá el siguiente resultado:

Table Created.....
Record Inserted.....
Error : Table 'mydb.myplayers' doesn't exist

Ejemplo

Si no hay errores en el último objeto de declaración ejecutado, esta función devuelve una cadena vacía -

<?php
   $con = mysqli_connect("localhost", "root", "password", "mydb");

   mysqli_query($con, "CREATE TABLE myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))");
   print("Table Created.....\n");

   $query = "INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'India'),(2, 'Jonathan', 'Trott', 'CapeTown', 'SouthAfrica'),(3, 'Kumara', 'Sangakkara', 'Matale', 'Srilanka')";

   //Preparing a statement
   $stmt = mysqli_prepare($con, $query);

   //Executing the statement
   mysqli_stmt_execute($stmt);
   print("Record Inserted.....\n");

   //Error 
   $error = mysqli_stmt_error($stmt);
   print("Error : ".$error);

   //Closing the statement
   mysqli_stmt_close($stmt);

   //Closing the connection
   mysqli_close($con);

?>

Esto producirá el siguiente resultado:

Table Created.....
Record Inserted.....
Error :