Home
In this post, we will learn about how to create connection between PHP as server-side with MySQL as database-engine.
There are 3 ways that will we use:
First, create a PHP file with standar name, like index.php, then write the needed variables:
$hostname = "localhost";
$port = "3306";
$username = "root";
$password = "";
1. MySQLi1 procedural
Create connection using mysqli::__construct2:
$connection = mysqli_connect( $hostname, $username, $password );
Check connection, if there is errors, call mysqli_connect_error()3 function inside exit()4 function and use var_dump()5 function with argument of the $connection
for get the result:
if ( ! $connection )
{
exit( "Connection failed: " . mysqli_connect_error() );
}
else
{
echo "Connnected succesfully to server";
echo "<pre>";
var_dump($connection);
echo "</pre>";
}
Close connection using mysqli::close6:
mysqli_close($connection);
Source Code:
2. MySQLi1 object-oriented
Create connection:
$connection = new mysqli( $hostname, $username, $password );
Check connection:
if ( $connection->connect_error )
{
exit( "Connection failed: {$connection->connect_error}" );
}
else
{
echo "Connnected succesfully to server";
echo "<pre>";
var_dump($connection);
echo "</pre>";
}
Close connection:
$connection->close();
Source Code:
3. PDO7
Especially for PDO, we will use try catch
try
{
Set dsn and attribute [option]
$dsn = "mysql:host=$hostname;port=$port";
$setAttribute = array(
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'",
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_OBJ
);
Create connection using PDO::__construct8:
$connection = new PDO( $dsn, $username, $password, $setAttribute );
Check connection:
if ( $connection )
{
echo "Connnected succesfully to server";
echo "<pre>";
var_dump($connection);
echo "</pre>";
}
}
Get and print error message, if exist:
catch ( PDOException $err )
{
echo "Connection failed: " . $err->getMessage();
}
Close connection with set $connection
equal to null:
$connection = null;
Source Code:
Back to Home
| Next
-
php.net, "MySQL Improved Extension", accessed on date 21 december 2019 and from https://www.php.net/manual/en/book.mysqli.php ↩
-
php.net, "mysqli::__construct", accessed on date 21 december 2019 and from https://www.php.net/manual/en/mysqli.construct.php ↩
-
php.net, "mysqli_connect_error", accessed on date 21 december 2019 and from https://www.php.net/manual/en/mysqli.connect-error.php ↩
-
php.net, "exit", accessed on date 21 december 2019 and from https://www.php.net/manual/en/function.exit.php ↩
-
php.net, "var_dump", accessed on date 21 december 2019 and from https://www.php.net/manual/en/function.var-dump.php ↩
-
php.net, "mysqli::close", accessed on date 21 december 2019 and from https://www.php.net/manual/en/mysqli.close.php ↩
-
php.net, "PHP Data Objects", accessed on date 21 december 2019 and from https://www.php.net/manual/en/book.pdo.php ↩
-
php.net, "PDO::__construct", accessed on date 21 december 2019 and from https://www.php.net/manual/en/pdo.construct.php ↩
Top comments (0)