Maison >développement back-end >PHP7 >Comment se connecter à une base de données (MySQL, PostgreSQL) avec PHP 7?
La connexion aux bases de données MySQL et PostgreSQL de PHP 7 implique l'utilisation des extensions de base de données respectives et de leurs fonctions associées. Les deux nécessitent l'établissement d'une connexion à l'aide de paramètres de connexion: nom d'hôte, nom d'utilisateur, mot de passe et nom de base de données du serveur. Bien que les fonctions spécifiques diffèrent, le principe sous-jacent reste le même.
Connexion MySQL:
Extension MySQLI de PHP (l'extension MySQL améliorée) fournit un moyen robuste d'interagir avec les bases de données MySQL. La fonction centrale est mysqli_connect()
. Cette fonction prend le nom d'hôte (ou l'adresse IP) du serveur, le nom d'utilisateur, le mot de passe et le nom de la base de données comme arguments. Il renvoie un objet de connexion sur une connexion réussie, ou false
en cas de défaillance.
<code class="php"><?php $servername = "localhost"; $username = "your_username"; $password = "your_password"; $dbname = "your_database_name"; // Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } echo "Connected successfully"; $conn->close(); ?></code>
Connexion postgresql:
Pour PostgreSQL, PHP utilise la fonction pg_connect()
de l'extension pg_
. Semblable à MySQLI, il nécessite l'adresse du serveur, le nom d'utilisateur, le mot de passe et le nom de la base de données. La fonction renvoie une ressource de connexion sur le succès, ou false
sinon.
<code class="php"><?php $conn_string = "host=localhost port=5432 dbname=your_database_name user=your_username password=your_password"; $conn = pg_connect($conn_string); if (!$conn) { die("Error in connection: " . pg_last_error()); } echo "Connected successfully"; pg_close($conn); ?></code>
N'oubliez pas d'installer les extensions PHP nécessaires (mysqli
pour MySQL et pg_
pour PostgreSQL) avant d'exécuter ce code. Cela peut généralement être fait via le gestionnaire de packages de votre système ou en compilant PHP avec les options appropriées.
Comme détaillé ci-dessus, les fonctions principales sont:
mysqli_connect()
(ORIVEAT-ORIENTED: MySQL: new mysqli()
mysqli_select_db()
(ORIVEOT-ORIENTED: MySQL: pg_connect()
) est la fonction principale pour établir une connexion. D'autres fonctions connexes, comme pg_pconnect()
(pour sélectionner une base de données spécifique après la connexion), sont également souvent utilisées. est la fonction fondamentale pour se connecter à une base de données postgresql. Il existe également d'autres fonctions comme
(pour les connexions persistantes) disponibles.Comment gérer les erreurs potentielles pendant le processus de connexion de la base de données dans PHP 7?
La gestion robuste des erreurs est cruciale. Ne comptez jamais sur l'absence d'un message d'erreur pour assumer une connexion réussie. Vérifiez toujours explicitement les erreurs après avoir tenté de se connecter. mysqli_connect()
false
mysqli
mysql: connect_error
<code class="php">$conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); }</code>La fonction
renvoie en cas de défaillance. La propriété de l'objet
fournit un message d'erreur détaillé. pg_connect()
false
pg_last_error()
PostgreSQL:
<code class="php"><?php $servername = "localhost"; $username = "your_username"; $password = "your_password"; $dbname = "your_database_name"; // Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } echo "Connected successfully"; $conn->close(); ?></code>
Au-delà des erreurs de connexion simples, envisagez d'utiliser des blocs d'essai pour une gestion des erreurs plus complète, en particulier lorsque vous effectuez des requêtes de base de données. Les erreurs de journalisation dans un fichier ou les notifications d'erreur d'envoi sont également de bonnes pratiques.
getenv()
config.php
.htaccess
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!