étapes de connexion à la base de données PHP
Nous avons organisé la connexion à la base de données en 8 étapes les plus importantes pour tout le monde, je l'appelle en plaisantant : ? Les huit étapes de la connexion à la base de données ?.
Les huit étapes sont les suivantes, et les fonctions utilisées dans chaque étape sont expliquées?:
étape 1?: Se connecter au serveur de base de données
類型 | 說明 |
---|---|
函數(shù) | mysqli_connect |
功能 | 連接到mysql數(shù)據(jù)庫服務(wù)器 |
參數(shù)1 | 主機(jī) |
參數(shù)2 | 數(shù)據(jù)庫服務(wù)器登陸名 |
參數(shù)3 | 密碼 |
參數(shù)4 | 數(shù)據(jù)庫的名稱 |
參數(shù)5 | 數(shù)據(jù)庫服務(wù)器端口不填默認(rèn)3306 |
Si paramètre 4, Le nom de la base de données a été renseigné et sélectionné à cette étape, et il n'est pas nécessaire d'effectuer la troisième étape.
étape 2?: Erreur de jugement
類型 | 說明 |
---|---|
函數(shù) | mysqli_errno |
功能 | 返回連接錯(cuò)誤號(hào),無錯(cuò)誤返回0 |
參數(shù)1 | 傳入mysqli_connect返回的資源 |
類型 | 說明 |
---|---|
函數(shù) | mysqli_error |
功能 | 返回連接錯(cuò)誤字符串 |
參數(shù)1 | 傳入mysqli_connect返回的資源 |
étape 3?: Sélectionner la base de données
類型 | 說明 |
---|---|
函數(shù) | mysqli_select_db |
功能 | 選擇本連接中的數(shù)據(jù)庫 |
參數(shù)1 | 傳入mysqli_connect返回的資源 |
參數(shù)2 | 需要連接的數(shù)據(jù)庫名 |
Si la base de données a été renseignée lors de la première étape, pas besoin Si vous passez à une autre base de données, vous n'avez pas besoin d'effectuer la troisième étape.
étape 4?: Définir le jeu de caractères
類型 | 說明 |
---|---|
函數(shù) | mysqli_set_charset |
功能 | 設(shè)置與mysql服力器連接,結(jié)果,校驗(yàn)字符集 |
參數(shù)1 | 傳入mysqli_connect返回的資源 |
參數(shù)2 | 字符集類型 |
Pour plus de notes, veuillez prêter attention au livre "13.6 Ultimate Solution to Garbled Data Display"
étape 5?: Préparer l'instruction SQL
est en fait une cha?ne d'instructions SQL.
Par exemple?:
<?php $sql = "insert into user(username,password) values('$username','$password')"; $con = mysql_connect("localhost","peter","abc123"); if (!$con) { die('Could not connect: ' . mysql_error()); } // some code ?>
Nous attribuons généralement des variables à utiliser dans les instructions SQL. Cependant, il existe une erreur dans la variable ou dans l'instruction SQL, qui est très difficile à résoudre.
Nous avons ajouté cette étape en fonction de l'expérience de travail réelle.
Si une erreur est signalée lors de l'exécution de cette étape, nous pouvons imprimer l'instruction SQL et la coller dans phpMyAdmin ou des outils associés.
Lors du dépannage, si l'exécution réussit, cela signifie que le problème ne vient pas de l'instruction SQL. Si l'exécution échoue, vérifiez soigneusement l'instruction SQL.
étape 6?: Envoyer l'instruction SQL
類型 | 說明 |
---|---|
函數(shù) | mysqli_query |
功能 | 發(fā)送SQL語句 |
參數(shù)1 | 傳入mysqli_connect返回的資源 |
參數(shù)2 | 傳入發(fā)送的SQL語句 |
L'instruction SQL est préparée et doit être envoyée au serveur MySQL via mysqli_query.
Le serveur MySQL exécutera l'instruction SQL envoyée pour exécution.
étape 7?: Déterminer si l'exécution est normale ou parcourir les données
Lire
à l'étape 6, l'instruction de la catégorie sélectionnée est envoyée et les résultats ont généralement besoin à sortir et à afficher. Vous devez utiliser la fonction qui parcourt les données d'affichage.
類型 | 說明 |
---|---|
函數(shù) | mysqli_fetch_array |
功能 | 得到result結(jié)果集中的數(shù)據(jù),返回?cái)?shù)組進(jìn)行便利 |
參數(shù)1 | 傳入查詢出來的結(jié)果變量 |
參數(shù)2 | 傳入MYSQLI_NUM返回索引數(shù)組,MYSQLI_ASSOC返回關(guān)聯(lián)數(shù)組,MYSQLI_BOTH返回索引和關(guān)聯(lián) |
類型 | 說明 |
---|---|
函數(shù) | mysqli_fetch_assoc |
功能 | 得到result結(jié)果集中的數(shù)據(jù),返回關(guān)聯(lián)數(shù)組進(jìn)行便利 |
參數(shù)1 | 傳入查詢出來的結(jié)果變量 |
類型 | 說明 |
---|---|
函數(shù) | mysqli_fetch_row |
功能 | 得到result結(jié)果集中的數(shù)據(jù),返回索引數(shù)組進(jìn)行便利 |
參數(shù)1 | 傳入查詢出來的結(jié)果變量 |
類型 | 說明 |
---|---|
函數(shù) | mysqli_fetch_object |
功能 | 得到result結(jié)果集中的數(shù)據(jù),返回對象進(jìn)行遍歷 |
參數(shù)1 | 傳入查詢出來的結(jié)果變量 |
類型 | 說明 |
---|---|
函數(shù) | mysqli_num_rows |
功能 | 返回查詢出來的結(jié)果總數(shù) |
參數(shù)1 | 傳入查詢出來的結(jié)果變量 |
類型 | 說明 |
---|---|
函數(shù) | mysqli_num_rows |
功能 | 返回查詢出來的結(jié)果總數(shù) |
參數(shù)1 | 傳入查詢出來的結(jié)果變量 |
注 | 實(shí)際工作中用得非常少,了解 |
écrire
à l'étape 6, si l'instruction d'insertion est envoyée, vous devez généralement savoir si l'exécution a réussi ou obtenir l'ID auto-incrémenté en même temps.
類型 | 說明 |
---|---|
函數(shù) | mysqli_fetch_field |
功能 | 遍歷數(shù)據(jù)行 |
參數(shù)1 | 傳入查詢出來的結(jié)果變量 |
Modifier et supprimer
A l'étape 6, si les déclarations de mise à jour et de suppression des catégories sont envoyées. Il suffit de déterminer si l'exécution est réussie.
Nous répertorions ces fonctions couramment utilisées dans des tableaux de données pour que tout le monde puisse les vérifier.
étape 8?: Fermez la base de données
類型 | 說明 |
---|---|
函數(shù) | mysqli_close |
功能 | 關(guān)閉數(shù)據(jù)庫連接 |
參數(shù)1 | 傳入mysqli_connect返回的資源 |
La connexion à la base de données est un type de ressource. Nous vous en avons parlé lorsque nous avons expliqué les types de ressources dans le chapitre précédent. Tous les types de ressources impliqués sont ouverts ou fermés. Cela garantit que PHP traite et recycle les ressources plus efficacement.
Par conséquent, une fois la connexion à la base de données réussie, il n'est pas nécessaire de l'utiliser. Nous pouvons fermer cette connexion.
Autres?: fonction d'affichage des informations sur le serveur
類型 | 說明 |
---|---|
函數(shù) | mysqli_get_server_info |
功能 | 返回服務(wù)器信息 |
參數(shù)1 | 傳入mysqli_connect返回的資源 |
類型 | 說明 |
---|---|
函數(shù) | mysqli_get_server_version |
功能 | 返回服務(wù)器版本 |
參數(shù)1 | 傳入mysqli_connect返回的資源 |
Remarque?:
Mysqli n'a besoin que d'apprendre la méthode procédurale. Dans le travail réel de l'étape orientée objet, l'utilisation des objets de mysqli a été complètement abandonnée et l'objet PDO a été utilisé pour se connecter à la base de données.