• PHP Video Tutorials

PHP mysqli_stmt_reset() Function



Definition and Usage

The mysqli_stmt_reset() function accepts a prepared statement object (previously opened) as a parameter, and resets it i.e. it changes resets the errors, unbuffered result sets and data sent. The query, bindings and, stored result sets will not be changed.

Syntax

mysqli_stmt_reset($stmt);

Parameters

Sr.No Parameter & Description
1

con(Mandatory)

This is an object representing a prepared statement.

Return Values

The PHP mysqli_stmt_reset() function returns a boolean value which is true on success and false on failure.

PHP Version

This function was first introduced in PHP Version 5 and works works in all the later versions.

Example

Following example demonstrates the usage of the 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, 'Sikhar', 'Dhawan', 'Delhi', 'India')");
   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);
?>

This will produce following result −

Record Inserted.....
Reset Successful

Since we reset the statement in the middle, the contents of the result are not printed with out the reset function this program generates the following output −

Record Inserted.....
Reset Successful
E:\PHPExamples>php procedure_oriented.php
Table Created.....
Record Inserted.....
Id: 1
fname: Sikhar
lname: Dhawan
pob: Delhi
country: India

Id: 2
fname: Jonathan
lname: Trott
pob: CapeTown
country: SouthAfrica

Example

In object oriented style the syntax of this function is $stmt->close(); Following is the example of this function in 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 = 'Shikhar';
   $lname = 'Dhawan';
   $pob = 'Delhi';
   $country = 'India';

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

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

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

This will produce 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 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 | Shikhar    | Dhawan    | Delhi          | India   |
+------+------------+-----------+----------------+---------+
1 row in set (0.00 sec)
php_function_reference.htm
Advertisements