Hello folks! welcome back to a new edition of our tutorial on PHP. In this tutorial guide, we are going to be studying about the PHP mysqli_stmt_reset() Function.
The built-in PHP mysqli_stmt_reset() function accepts a prepared statement object (previously opened) as a parameter, and resets it i.e. it resets the errors, unbuffered result sets and data sent. The query, bindings and, stored result sets will not be changed.
The built-in PHP mysqli_stmt_reset() function accepts a prepared statement object (previously opened) as a parameter, and resets it i.e. it resets the errors, unbuffered result sets and data sent. The query, bindings and, stored result sets will not be changed.
Syntax
Following below is the syntax to use this function -
mysqli_stmt_reset($stmt);
Parameter Details
Sr.No | Parameter & Description |
---|---|
1 | stmt(Mandatory) This is an object representing the prepared statement. |
Return Value
This built-in PHP function returns TRUE on success and FALSE on failure.
PHP Version
This built-in PHP function was first introduced in PHP version 5 and works in all the later versions.
Example1
The following below is an example which demonstrates the usage of the built-in PHP mysqli_stmt_reset() function (in procedural style) -
<?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, 'Kennedy', 'Nkpara', 'PortHarcourt', 'Nigeria')"); mysqli_query($con, "INSERT INTO myplayers values(2, 'Jonathan', 'Trott', 'CapeTown', 'SouthAfrica')"); print("Record Inserted.....\n"); //Retrieving the contents of the table $stmt = mysqli_prepare($con, "SELECT * FROM myplayers"); //Executing the statement mysqli_stmt_execute($stmt); $res = mysqli_stmt_reset($stmt); if($res){ print("Reset Successful"); } //Binding values in result to variables $res = mysqli_stmt_bind_result($stmt, $id, $fname, $lname, $pob, $country); while (mysqli_stmt_fetch($stmt)) { print("Id: ".$id."\n"); print("fname: ".$fname."\n"); print("lname: ".$lname."\n"); print("pob: ".$pob."\n"); print("country: ".$country."\n"); print("\n"); } //Closing the statement mysqli_stmt_close($stmt); //Closing the connection mysqli_close($con); ?>
Output
When the above code is executed, it will produce the following result -
Record Inserted..... Reset Successful
Since we reset the statement in the middle, the contents of the result are not printed. Without the reset function this program produces the following result -
Record Inserted..... Reset Successful E:\PHPExamples>php procedure_oriented.php Table Created..... Record Inserted..... Id: 1 fname: Kennedy lname: Nkpara pob: PortHarcourt country: Nigeria Id: 2 fname: Jonathan lname: Trott pob: CapeTown country: SouthAfrica
Example2
In an object oriented style the syntax of this function is $stmt->close(); Following is the example of this function in an object oriented style $minus;
<?php //Creating a connection $con = new mysqli("localhost", "root", "password", "mydb"); //Creating a table $con -> query("CREATE TABLE players(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))"); print("Table Created.....\n"); //Inserting values into the table using prepared statement $stmt = $con -> prepare( "INSERT INTO players values(?, ?, ?, ?, ?)"); $res = $stmt->reset(); if($res){ print("Reset Successful"); } //Binding values to the parameter markers $stmt -> bind_param("issss", $id, $fname, $lname, $pob, $country); $id = 1; $fname = 'Kennedy'; $lname = 'Nkpara'; $pob = 'PortHarcourt'; $country = 'Nigeria'; //Executing the statement $stmt->execute(); //Closing the statement $stmt->close(); //Closing the connection $con->close(); ?>
Output
When the above code is executed, it will produce the following result -
Table Created..... Reset Successful
And the contents of the players table will be empty -
mysql> drop table players; Query OK, 0 rows affected (0.26 sec)
If you remove the reset() function and then execute the above program, the contents of the players table will be as follows -
mysql> select * from players; +------+------------+-----------+----------------+---------+ | ID | First_Name | Last_Name | Place_Of_Birth | Country | +------+------------+-----------+----------------+---------+ | 1 | Kennedy | Nkpara | PortHarcourt | Nigeria | +------+------------+-----------+----------------+---------+ 1 row in set (0.00 sec)
Alright guys! This is where we are going to be rounding up for this tutorial post. In our next tutorial, we are going to be discussing about the mysqli_stmt_result_metadata() Function in PHP.
Do feel free to ask your questions where necessary and we will attend to them as soon as possible. If this tutorial was helpful to you, you can use the share button to share this tutorial.
Do follow us on our various social media handles available and also subscribe to our newsletter to get our tutorial posts delivered directly to your emails.
Thanks for reading and bye for now.
Do feel free to ask your questions where necessary and we will attend to them as soon as possible. If this tutorial was helpful to you, you can use the share button to share this tutorial.
Do follow us on our various social media handles available and also subscribe to our newsletter to get our tutorial posts delivered directly to your emails.
Thanks for reading and bye for now.