PHP fetch() and mysqli_stmt_fetch()

This article is created to cover the two functions of PHP, namely:

Both functions are used to fetch results from a prepared statement into bound variables. The only difference is that fetch() is used with PHP mysqli object-oriented scripts, whereas mysqli_stmt_fetch() is used with PHP mysqli procedural scripts.

PHP fetch()

The PHP fetch() function is used to fetch results from a prepared statement into bound variables in PHP mysqli object-oriented style. For example:

<?php
   $conn = new mysqli("localhost", "root", "", "codescracker");
   
   if(!$conn->connect_errno)
   {
      $stmt = $conn->prepare("SELECT name, age FROM customer");
      $stmt->execute();
      $stmt->bind_result($x, $y);
      while($stmt->fetch())
      {
         echo "Name: ", $x, "<BR>";
         echo "Age: ", $y, "<HR>";
      }
   }
   $conn->close();
?>

The output produced by the above PHP example using the fetch() function is shown in the snapshot given below:

php fetch function

That is, the result fetched into the bound variables is $x and $y.

Note: The mysqli() function is used to open a connection to the MySQL database server in object-oriented style.

Note: The new keyword is used to create a new object.

Note: The connect_errno is used to get or return the error code (if any) from the last connect call in object-oriented style.

Note: The prepare() function is used to prepare an SQL statement before its execution on the MySQL database in object-oriented style, to avoid SQL injection.

Note: The execute() function is used to execute a prepared statement on the MySQL database in object-oriented style.

Note: The bind_result() function is used to bind variables to a prepared statement for result storage in object-oriented style.

Note: The close() function is used to close an opened connection in object-oriented style.

PHP fetch() Syntax

The syntax of the fetch() function in PHP is:

$mysqli_stmt -> fetch()

PHP mysqli_stmt_fetch()

The PHP mysqli_stmt_fetch() function is used to fetch results from a prepared statement into bound variables in PHP mysqli procedural style. For example:

<?php
   $conn = mysqli_connect("localhost", "root", "", "codescracker");
   
   if(!mysqli_connect_errno())
   {
      $stmt = mysqli_prepare($conn, "SELECT name, age FROM customer");
      mysqli_stmt_execute($stmt);
      mysqli_stmt_bind_result($stmt, $x, $y);
      while(mysqli_stmt_fetch($stmt))
      {
         echo "Name: ", $x, "<BR>";
         echo "Age: ", $y, "<HR>";
      }
   }
   mysqli_close($conn);
?>

Note: The mysqli_connect() function is used to open a connection to the MySQL database server in procedural style.

Note: The mysqli_connect_errno() function is used to get or return the error code (if any) from the last connect call in procedural style.

Note: The mysqli_prepare() function is used to prepare an SQL statement before its execution on the MySQL database in procedural style, to avoid SQL injection.

Note: The mysqli_stmt_execute() function is used to execute a prepared statement on the MySQL database in procedural style.

Note: The mysqli_stmt_bind_result() function is used to bind variables to a prepared statement for result storage in procedural style.

Note: The mysqli_close() function is used to close an opened connection to the MySQL database in procedural style.

PHP mysqli_stmt_fetch() Syntax

The syntax of the mysqli_stmt_fetch() function in PHP is:

mysqli_stmt_fetch($mysqli_stmt)

PHP Online Test


« Previous Tutorial Next Tutorial »


Liked this post? Share it!