Connexion PHP-MySQL
Il est recommandé d'utiliser PHP 5 et supérieur pour utiliser la méthode suivante pour se connecter à MySQL :
Extension MySQL ("i" signifie amélioré)
PDO (PHP Data Objects)
Dans les premières versions de PHP, nous utilisions l'extension MySQL. Cependant, cette extension est devenue obsolète en 2012.
Dois-je utiliser MySQLi ou PDO ?
Si vous avez besoin d'une réponse courte, "utilisez celui avec lequel vous êtes à l'aise".
MySQLi et PDO ont leurs propres avantages :
PDO est utilisé dans 12 bases de données différentes, et MySQLi ne cible que les bases de données MySQL.
Ainsi, si votre projet doit basculer entre plusieurs bases de données, il est recommandé d'utiliser PDO, de sorte qu'il vous suffit de modifier la chaîne de connexion et l'instruction de requête du département. Avec MySQLi, si vous utilisez une autre base de données, vous devez réécrire tout le code, y compris les requêtes.
Les deux sont orientés objet, mais MySQLi fournit également une interface API.
Les deux prennent en charge les déclarations préparées. Les instructions préparées peuvent empêcher l'injection SQL et sont très importantes pour la sécurité des projets Web.
MySQLi et PDO se connectent à l'instance MySQL
Dans ce chapitre et les chapitres suivants, nous utiliserons les trois méthodes suivantes pour démontrer le fonctionnement de PHP avec MySQL :
MySQLi (orienté objet)
MySQLi (orienté procédure)
PDO
Installation MySQLi
Linux et Windows : Dans la plupart des cas, l'extension MySQLi est automatiquement installée lorsque le package php5 mysql est installé.
Pour les détails de l'installation, veuillez vérifier : http://php.net/manual/en/mysqli.installation.php
Vous pouvez vérifier si l'installation a réussi via phpinfo() :
Installation PDO
Pour les détails d'installation, veuillez consulter : http://php.net/manual/en/pdo.installation.php
Vous pouvez vérifier si l'installation a réussi via phpinfo() :
PHP se connecte à MySQL
Avant d'accéder au Base de données MySQL, nous devons d'abord nous connecter au serveur de base de données :
Instance (MySQLi - Orienté Objet)
<?php $servername = "localhost"; $username = "username"; $password = "password"; // 创建连接 $conn = new mysqli($servername, $username, $password); // 检测连接 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } echo "连接成功"; ?>
< /th> | Notez que $connect_error dans l'exemple orienté objet ci-dessus a été ajouté dans PHP 5.2.9 et 5.3.0. Si vous avez besoin d'une compatibilité avec des versions antérieures
Veuillez utiliser le code suivant pour remplacer :
|
---|
Instance (MySQLi - Orienté procédure)
<?php $servername = "localhost"; $username = "username"; $password = "password"; // 创建连接 $conn = mysqli_connect($servername, $username, $password); // 检测连接 if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } echo "连接成功"; ?
Instance (PDO)
<?php $servername = "localhost"; $username = "username"; $password = "password"; try { $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password); echo "连接成功"; } catch(PDOException $e) { echo $e->getMessage(); } ?>
注意在以上 PDO 实例中我们已经指定了数据库 (myDB)。PDO 在连接过程需要设置数据库名。如果没有指定,则会抛出异常。 |
Fermer la connexion
La connexion sera fermée automatiquement après l'exécution du script. Vous pouvez également utiliser le code suivant pour fermer la connexion :
Instance (MySQLi - Orienté Objet)
$conn->close();
Instance (MySQLi - Processus orienté objet)
mysqli_close($conn);
Instance (PDO)
$conn = null;
Recommandation de didacticiel vidéo connexe : "tutoriel mysql》http://www.php.cn/course/list/51.html