Fonction PHP mysqli_stmt_error ()
Définition et utilisation
le mysqli_stmt_error() function renvoie la description de l'erreur survenue lors de l'exécution de la dernière instruction.
Syntaxe
mysqli_stmt_error($stmt)
Paramètres
Sr. Non | Paramètre et description |
---|---|
1 | stmt(Mandatory) Ceci est un objet représentant une déclaration. |
Valeurs de retour
La fonction PHP mysqli_stmt_error () renvoie une valeur de chaîne représentant la description de l'erreur survenue lors de l'exécution de la dernière instruction. S'il n'y a pas d'erreur, cette fonction renvoie une chaîne vide.
Version PHP
Cette fonction a été introduite pour la première fois dans la version 5 de PHP et fonctionne dans toutes les versions ultérieures.
Exemple
L'exemple suivant montre l'utilisation de la fonction mysqli_stmt_error () (dans le style procédural) -
<?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);
?>
Cela produira le résultat suivant -
Table Created.....
Record Inserted.....
Error : Table 'mydb.myplayers' doesn't exist
Exemple
Dans le style orienté objet, la syntaxe de cette fonction est $ con -> error . Voici l'exemple de cette fonction dans le style orienté objet -
<?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();
?>
Cela produira le résultat suivant -
Table Created.....
Record Inserted.....
Error : Table 'mydb.myplayers' doesn't exist
Exemple
S'il n'y a aucune erreur dans le dernier objet instruction exécuté, cette fonction renvoie une chaîne vide -
<?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);
?>
Cela produira le résultat suivant -
Table Created.....
Record Inserted.....
Error :