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_bind_result() Function.
The built-in PHP mysqli_stmt_bind_result() function binds the columns of a result set to variables. After binding variables, you need to invoke the mysqli_stmt_fetch() function to get the values of the columns in the specified variables.
The built-in PHP mysqli_stmt_bind_result() function binds the columns of a result set to variables. After binding variables, you need to invoke the mysqli_stmt_fetch() function to get the values of the columns in the specified variables.
Syntax
Following below is the syntax to use this function -
mysqli_stmt_bind_result($stmt, $var1, $var2...);
Parameter Details
Sr.No | Parameter & Description |
---|---|
1 | stmt(Mandatory) This is an object representing a prepared statement. |
2 | var1(Mandatory) This represent the variable(s) to be bound to the columns. |
Return Value
This built-in PHP function returns TRUE on success and FALSE on failure.
PHP Version
This 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 PHP mysqli_stmt_bind_result() function (in a 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')"); mysqli_query($con, "INSERT INTO myplayers values(3, 'Queen', 'Douglas', 'Texas', 'UnitedStates')"); print("Record Inserted.....\n"); //Retrieving the contents of the table $stmt = mysqli_prepare($con, "SELECT * FROM myplayers"); //Executing the statement mysqli_stmt_execute($stmt); //Binding values in result to variables 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 -
Table Created..... Record Inserted..... Id: 1 fname: Kennedy lname: Nkpara pob: PortHarcourt country: Nigeria Id: 2 fname: Jonathan lname: Trott pob: CapeTown country: SouthAfrica Id: 3 fname: Queen lname: Douglas pob: Texas country: UnitedStates
Example2
In an object oriented style the syntax of this function is $stmt->bind_result(); Following is the example of this function in an object oriented style $minus -
<?php //Creating a connection $con = new mysqli("localhost", "root", "password", "mydb"); $con -> query("CREATE TABLE Test(Name VARCHAR(255), AGE INT)"); $con -> query("insert into Test values('Kennedy', 27),('Paul', 30),('Justice', 28)"); print("Table Created.....\n"); $stmt = $con -> prepare( "SELECT * FROM Test WHERE Name in(?, ?)"); $stmt -> bind_param("ss", $name1, $name2); $name1 = 'Kennedy'; $name2 = 'Paul'; print("Records Deleted.....\n"); //Executing the statement $stmt->execute(); //Binding variables to resultset $stmt->bind_result($name, $age); while ($stmt->fetch()) { print("Name: ".$name."\n"); print("Age: ".$age."\n"); } //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..... Records Deleted..... Name: Kennedy Age: 27 Name: Paul Age: 30
Example3
Following example fetches the results of the DESCRIBE query using the built-in PHP mysqli_stmt_bind_result() and the built-in PHP mysqli_stmt_fetch() functions -
<?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"); //Description of the table $stmt = mysqli_prepare($con, "DESC myplayers"); //Executing the statement mysqli_stmt_execute($stmt); //Binding values in result to variables mysqli_stmt_bind_result($stmt, $field, $type, $null, $key, $default, $extra); while (mysqli_stmt_fetch($stmt)) { print("Field: ".$field."\n"); print("Type: ".$type."\n"); print("Null: ".$null."\n"); print("Key: ".$key."\n"); print("Default: ".$default."\n"); print("Extra: ".$extra."\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 -
Table Created..... Field: ID Type: int(11) Null: YES Key: Default: Extra: Field: First_Name Type: varchar(255) Null: YES Key: Default: Extra: Field: Last_Name Type: varchar(255) Null: YES Key: Default: Extra: Field: Place_Of_Birth Type: varchar(255) Null: YES Key: Default: Extra: Field: Country Type: varchar(255) Null: YES Key: Default: Extra:
Example4
The following below example fetches the results of the SHOW TABLES query using the built-in PHP mysqli_stmt_bind_result() and the built-in PHP mysqli_stmt_fetch() functions -
<?php $con = mysqli_connect("localhost", "root", "password"); //Selecting the database mysqli_query($con, "CREATE DATABASE NewDatabase"); mysqli_select_db($con, "NewDatabase"); //Creating tables mysqli_query($con, "CREATE TABLE test1(Name VARCHAR(255), Age INT)"); mysqli_query($con, "CREATE TABLE test2(Name VARCHAR(255), Age INT)"); mysqli_query($con, "CREATE TABLE test3(Name VARCHAR(255), Age INT)"); print("Tables Created.....\n"); //Description of the table $stmt = mysqli_prepare($con, "SHOW TABLES"); //Executing the statement mysqli_stmt_execute($stmt); //Binding values in result to variables mysqli_stmt_bind_result($stmt, $table_name); print("List of tables in the current database: \n"); while (mysqli_stmt_fetch($stmt)) { print($table_name."\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 -
Tables Created..... List of tables in the current database: test1 test2 test3
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_close() 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.