- PHP Basics
- PHP Home
- PHP Environment Setup
- PHP Getting Started
- PHP Basic Syntax
- PHP echo
- PHP print
- PHP echo Vs print
- PHP Comments
- PHP Data Types
- PHP Variables
- PHP Variable Scope
- PHP gettype()
- PHP Constants
- PHP Operators
- PHP Program Control
- PHP Decision Making
- PHP if-elseif-else
- PHP switch
- PHP Loops
- PHP for Loop
- PHP while Loop
- PHP do-while Loop
- PHP foreach Loop
- PHP break & continue
- PHP Popular Topics
- PHP Arrays
- PHP print_r()
- PHP Strings
- PHP Functions
- PHP References
- PHP Object Oriented
- PHP Object Oriented
- PHP Classes & Objects
- PHP Member Variable
- PHP Member Function
- PHP Encapsulation
- PHP Data Abstraction
- PHP Inheritance
- PHP Constructor Destructor
- PHP Polymorphism
- PHP Web Developments
- PHP Web Developments
- PHP GET & POST
- PHP Read Requested Data
- PHP File Handling (I/O)
- PHP File Handling (I/O)
- PHP fopen() | Open File
- PHP Create a File
- PHP fwrite() | Write to File
- PHP fread() | Read File
- PHP feof()
- PHP fgetc()
- PHP fgets()
- PHP fclose() | Close File
- PHP unlink() | Delete File
- PHP Append to File
- PHP copy() | Copy File
- PHP file_get_contents()
- PHP file_put_contents()
- PHP file_exists()
- PHP filesize()
- PHP rename() | Rename File
- PHP fseek()
- PHP ftell()
- PHP rewind()
- PHP disk_free_space()
- PHP disk_total_space()
- PHP mkdir() | Create Directory
- PHP rmdir() | Remove Directory
- PHP glob() | Get Files/Directories
- PHP basename() | Get filename
- PHP dirname() | Get Path
- PHP filemtime()
- PHP file()
- PHP Advanced
- PHP Cookies
- PHP Sessions
- PHP Send Emails
- PHP Serialization
- PHP Namespaces
- PHP File Upload
- PHP Date and Time
- PHP Image Processing
- PHP Regular Expression
- PHP Predefined Variables
- PHP Error Handling
- PHP Debugging
- PHP and MySQLi Tutorial
- PHP and MySQLi Home
- PHP MySQLi Setup
- PHP MySQLi Create DB
- PHP MySQLi Create Table
- PHP MySQLi Connect to DB
- PHP MySQLi Insert Record
- PHP MySQLi Fetch Record
- PHP MySQLi Update Record
- PHP MySQLi Delete Record
- PHP MySQLi SignUp Page
- PHP MySQLi LogIn Page
- PHP MySQLi Store User Data
- PHP MySQLi Close Connection
- PHP connect_errno
- PHP connect_error
- PHP query()
- PHP fetch_row()
- PHP fetch_assoc()
- PHP fetch_array()
- PHP free_result()
- PHP error
- PHP prepare()
- PHP bind_param()
- PHP execute()
- PHP fetch()
- PHP store_result()
- PHP num_rows
- PHP bind_result()
- PHP get_result()
- PHP mysqli_result Class
- PHP Error Constants
- PHP mysqli_driver()
- PHP Misc
- PHP error_reporting()
- PHP Escape Special Characters
- PHP htmlspecialchars()
- PHP new
- PHP header()
- PHP getallheaders()
- PHP empty()
- PHP isset()
- PHP unset()
- PHP exit()
- PHP exit Vs break
- PHP include()
- PHP require()
- PHP include() Vs require()
- PHP AJAX & XML
- PHP AJAX
- PHP XML
- PHP File Handling Functions
- PHP abs()
- PHP Test
- PHP Online Test
- Give Online Test
- All Test List
PHP connect_error and mysqli_connect_error()
This article is created to cover the two topics of PHP, that are:
- connect_error
- mysqli_connect_error()
Both returns error description (if any) from the last connection. The only difference is, the connect_error uses with PHP MySQLi object-oriented script, whereas the mysqli_connect_error() uses with PHP MySQLi procedural script.
PHP connect_error
The PHP connect_error is used when we need to get and print the error description raised by last connection error, while using PHP MySQLi object-oriented script to connect to the database. For example:
<?php $server = "localhost"; $user = "unknown"; $password = ""; $database = "codescracker"; $conn = new mysqli($server, $user, $password, $database); if($conn->connect_errno) { echo "Database connection failed: ", $conn->connect_error; exit(); } $conn -> close(); ?>
Since the user unknown is not available as user of my MySQL database server. Therefore the output produced by above example is:
That is:
Fatal error: Uncaught mysqli_sql_exception: Access denied for user 'unknown'@'localhost' (using password: NO) in C:\xampp\htdocs\index.php:7 Stack trace: #0 C:\xampp\htdocs\index.php(7): mysqli->__construct('localhost', 'unknown', '', 'codescracker') #1 {main} thrown in C:\xampp\htdocs\index.php on line 7
Now what I think is, you might expect the output, something like:
Database connection failed: ...... // i.e., followed by error description
Therefore, let me clear, the output you are watching, was produced by default. To hide/suppress those Fatal error, you need to turn off the error reporting, using the following two statements:
$driver = new mysqli_driver(); $driver -> report_mode = MYSQLI_REPORT_OFF;
That is, here is the modified version of above example:
<?php $driver = new mysqli_driver(); $driver -> report_mode = MYSQLI_REPORT_OFF; $server = "localhost"; $user = "unknown"; $password = ""; $database = "codescracker"; $conn = @new mysqli($server, $user, $password, $database); if($conn->connect_errno) { echo "Database connection failed: ", $conn->connect_error; exit(); } // block of code to process further, on successful connection $conn -> close(); ?>
Now the output should be:
Note - The @ before new is written to suppress the default error.
Note - The mysqli() 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/return the error code (if any) from last connect call, 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.
Note - The mysqli_driver() is used to modify the error reporting mode, in object-oriented style.
PHP mysqli_connect_error()
The PHP mysqli_connect_error() is used when we need to get and print the error description raised by last connection error, while using PHP MySQLi procedural script to connect to the database. For example:
<?php mysqli_report(MYSQLI_REPORT_OFF); $server = "localhost"; $user = "unknown"; $password = ""; $database = "codescracker"; $conn = @mysqli_connect($server, $user, $password, $database); if(mysqli_connect_errno()) { echo "Database connection failed: ", mysqli_connect_error(); exit(); } mysqli_close($conn); ?>
You will get the same output as of previous one, that is:
Database connection failed: Access denied for user 'unknown'@'localhost' (using password: NO)
Note - The mysqli_report() is used to modify the error reporting mode, in procedural style.
Note - The mysqli_connect() is used to open a connection to the MySQL database server, in procedural style.
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_close() is used to close an opened connection to the MySQL database, in procedural style.
« Previous Tutorial Next Tutorial »
Like/Share Us on Facebook 😋