PHP-databasanslutning - Komplett guide till PHP-databasanslutning

Innehållsförteckning:

Anonim

Introduktion till PHP-databasanslutning

Databasen är en av de viktiga komponenterna i alla programmeringsspråk. För att hantera ett dynamiskt projekt och datahantering måste vi ha databasen. PHP stöder olika typer av databasanslutningar med den. MySQL är en av de mest använda relationsdatabaserna och den används mest också med PHP. Med tanke på termen databasanslutning i PHP, MySQL själv har olika sätt att göra anslutningar i en applikation för att spela med databas operationer. Efter att ha anslutit PHP-MYSQL kan vi göra olika saker som - infogning av poster; radering av poster; uppdatering av poster osv. I den här artikeln ser vi databasanslutning på olika sätt med PHP-språket, så fortsätt att läsa för att ta tag i det ordentligt.

Hur man ansluter PHP-databas

Innan vi ansluter, bör vi ha detaljer som - Värdnamn, databasanvändarnamn, databaslösenord, port (om tillämpning) osv. Varje programmeringsspråk har sitt eget unika sätt att ansluta till databaserna och spela med det. Databas i PHP, inte så mycket av en stor uppgift som vi ser på ett programmeringsspråk som JAVA. Det finns ett mycket enkelt par rader för att ansluta till databasen. På PHP-språket kan vi skapa databasanslutning på nedanstående sätt:

MySQL

Detta fungerar endast med MySQL-databasen. Denna förlängning följer det gamla traditionella sättet att kommunicera med en databas. Nu har varje kommande PHP-version avskrivit denna metod.

MySQLi Extension

Detta fungerar endast med MySQL-databasen, men detta är en förbättrad version av MySQL.

PDO

Det fungerar med olika databaser. Vanligtvis anser vi att detta är den bästa metoden av dessa tre. Den här betraktas som ett objektorienterat sätt att kommunicera med MySQL-databasen. I det ögonblick som vi skapar en anslutning ger det oss objektet att hantera MySQL-relaterade.

Exempel:

Nu är det dags att se hur vi kan använda ovan nämnda i PHP. Vi går igenom PHP: s faktiska kod för att göra detta jobb.

PHP MYSQL-anslutning med MYSQL

$servername = "localhost";
$username = "root";
$password = "";
$link = mysql_connect($servername, $username, $password);
if (!$link) (
die('Connection failed: ' . mysql_error());
)else(
echo "Database Connected successfully"; // in case of success
)

Anslutningen kan göras framgångsrikt i den lägre versionen av PHP. Men om vi använder den här koden står det Deprecated: mysql_connect () : MySQL-förlängningen avskrivs och kommer att tas bort i framtiden: använd mysqli eller PDO istället.

Det är därför vi bör undvika att använda den här tekniken för att skapa en databasanslutning på PHP-språk till MySQL-databasen.

PHP MYSQL-anslutning med MYSQLi

Vi kan skapa anslutningen med MYSQLi på två sätt.

MYSQLi Objektorienterad

<_?php
$servername = "localhost";
$username = "root";
$password = "";
// Database Connection Code
$conn = new mysqli($servername, $username, $password);
// Check connection
if ($conn->connect_error) (
die("Connection failed: " . $conn->connect_error); // in case of error
)else(
echo "Database Connected successfully"; // in case of success
)
?>

Nu har vi $ conn, databasanslutningsobjektet. Vi kan använda detta objekt för all kommunikation till databasen.

// selecting database "test1"
mysqli_select_db($conn, "test1");

Du kan också skicka databasen som ett argument vid upprättandet av anslutningen.

$ conn = nytt mysqli ($ servernamn, $ användarnamn, $ lösenord, $ databasnamn);

MYSQLi-funktion (procedurellt) sätt

$servername = "localhost";
$username = "root";
$password = "";
// Database Connection Code
$conn = mysqli_connect($servername, $username, $password);
// Check connection
if (!$conn) (
die("Connection failed: " . mysqli_connect_error()); // in case of error
)else(
echo "Database Connected successfully"; // in case of success
)

Vi kan också använda den andra operationen som databasanslutning och andra som nämnts ovan.

PDO PHP-databasanslutning

Återigen är detta ett objektorienterat sätt för databasanslutning i PHP. Vi kan använda olika typer av databaser med denna strategi.

$servername = "localhost";
$username = "root";
$password = "";
try (
// Database Connection Code
$conn = new PDO("mysql:host=$servername;dbname=test1", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// in case of success
echo "Connected successfully";
)
catch(PDOException $e)
(
// in case of error
echo "Connection failed: " . $e->getMessage();
)

Nu är frågan Ska jag använda MYSQLi eller PDO

Dessa båda är ett objektorienterat sätt för databasanslutning med PHP. Vi kan betrakta detta som ett nuvarande och framtida sätt för databasanslutningen. Men att välja bland dessa två handlar om vilken typ av behov du har med ditt projekt. Om det bara finns en MySQL-databas kan du gå med MYSQLi. Men i det ögonblick som möjligheten till databasen ändras, från MySQL till MySQL SERVER eller någon annan leverantör, är PDO det bästa alternativet. Dessa båda tillvägagångssätt stöder det förberedda uttalandet medan du skriver frågor för att göra databasoperationer. Ett förberett uttalande är en metod som vi kan skydda vår applikation eller databasen från SQL-injektionsattacken.

Slutsats

Så vad är det i ditt sinne. Efter att ha stött på alla de tre nämnda ovanstående typen av databasanslutningstekniker kom vi fram till att PDO är den bästa metoden att gå vidare med. Tanken bakom att sätta detta på toppen är att vi kan använda den här metoden för anslutningen, inte bara MySQL-databasen utan också den andra databasen som MySQL Server. Vi bör undvika att använda mysql_connect () för att se till att vår kod är hållbar och framtidsbeständig.

Rekommenderade artiklar

Detta är en guide till PHP-databasanslutning. Här diskuterar vi hur du ansluter php, PHP MYSQL-anslutning med MYSQL, PHP MYSQL-anslutning med MYSQLi, PDO PHP-databasanslutning, etc. Du kan också titta på följande artiklar för att lära dig mer -

  1. Hur ansluter man databas till PHP?
  2. Fördelar med PHP
  3. Hur ansluter jag till databas i Java?
  4. Hur ansluter jag databas till MySQL?
  5. PHP rekursiv funktion
  6. Rekursiv funktion i C