PHP mysqli() and mysqli_connect() | Connect to Database

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

  • mysqli()
  • mysqli_connect()

Both functions are used to open a connection to the MySQL database server. The only difference is, the mysqli() uses with PHP MySQLi object-oriented script, whereas the mysqli_connect() uses with PHP MySQLi procedural script, to do the job.

PHP mysqli() | Connect to Database using Object-Oriented

The PHP mysqli() function opens a connection to the MySQL database server in object-oriented style with the help of new keyword. For example:

<?php
   $servername = "localhost";
   $username = "root";
   $password = "";
   $databasename = "codescracker";
   
   $conn = new mysqli($servername, $username, $password, $databasename);
   
   if($conn -> connect_errno)
   {
      echo "Failed to establish the connection to the database.<BR>";
      echo "Reason: ", $conn -> connect_error;
      exit();
   }
   else
   {
      echo "Connection established successfully!";
      
      // block of code, to process further...
   }
   $conn -> close();
?>

Since root is the username of my MySQL database server. Also, I have a database named codescracker inside it. And the password of my database server is empty. Therefore the output of above example, in my case, is:

php mysqli connect

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

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

Note - The connect_error is used to get the error description (if any) from last connection, in object-oriented style.

Note - The exit() is used to terminate the execution of the current PHP script.

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

PHP mysqli() Syntax

The syntax of mysqli() function in PHP to open a database connection, using object-oriented style, is:

$conn = new mysqli(host, username, password, databasename, port, socket)

Note - The $conn is the connection variable, used further to check whether the connection established or not. If the connection has been established, then we can use this variable to work with the database named databasename.

Note - The host parameter is used to specify the host name or an IP address of MySQL server.

Note - The username parameter is used to specify the username of MySQL server.

Note - The password parameter is used to specify the password of MySQL server.

Note - The databasename parameter is used to specify the name of MySQL database to use in the program or application.

Note - The port parameter is used to specify the port number, where the connection to attempt.

Note - The socket parameter is used to specify the socket that has to be used.

All the five parameters are optional. But the first four parameters are used most of the time.

PHP mysqli_connect() | Connect to Database using Procedural

The PHP mysqli_connect() function opens a connection to the MySQL database server in procedural style. For example:

<?php
   $servername = "localhost";
   $username = "root";
   $password = "";
   $databasename = "codescracker";
   
   $conn = mysqli_connect($servername, $username, $password, $databasename);
   
   if(mysqli_connect_errno())
   {
      echo "Failed to establish the connection to the database.<BR>";
      echo "Reason: ", mysqli_connect_error();
      exit();
   }
   else
   {
      echo "Connection established successfully!";
      
      // block of code, to process further...
   }
   mysqli_close($conn);
?>

Note - The mysqli_connect_errno() is used to get/return the error code (if any) from last connect call, in procedural style.

Note - The mysqli_connect_error() is used to return the error description (if any) from the last connection, in procedural style.

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

PHP mysqli_connect() Syntax

The syntax of mysqli_connect() function in PHP, to open/establish a connection to the MySQL database, in MySQLi procedural, is:

$conn = mysqli_connect(host, username, password, databasename, port, socket)

PHP Online Test


« Previous Tutorial Next Tutorial »