Langkah sambungan pangkalan data PHP
Kami telah menyusun sambungan pangkalan data ke dalam 8 langkah paling penting untuk semua orang, saya secara berseloroh memanggilnya: "Lapan Langkah untuk Sambungan Pangkalan Data".
Lapan langkah adalah seperti berikut, dan fungsi yang digunakan dalam setiap langkah dijelaskan:
Langkah 1: Sambungkan ke pelayan pangkalan data
類型 | 說明 |
---|---|
函數 | mysqli_connect |
功能 | 連接到mysql數據庫服務器 |
參數1 | 主機 |
參數2 | 數據庫服務器登陸名 |
參數3 | 密碼 |
參數4 | 數據庫的名稱 |
參數5 | 數據庫服務器端口不填默認3306 |
Jika parameter 4, Nama pangkalan data telah diisi dan dipilih dalam langkah ini, dan tidak perlu melakukan langkah ketiga.
Langkah 2: Ralat dalam penghakiman
類型 | 說明 |
---|---|
函數 | mysqli_errno |
功能 | 返回連接錯誤號,無錯誤返回0 |
參數1 | 傳入mysqli_connect返回的資源 |
類型 | 說明 |
---|---|
函數 | mysqli_error |
功能 | 返回連接錯誤字符串 |
參數1 | 傳入mysqli_connect返回的資源 |
Langkah 3: Pilih pangkalan data
類型 | 說明 |
---|---|
函數 | mysqli_select_db |
功能 | 選擇本連接中的數據庫 |
參數1 | 傳入mysqli_connect返回的資源 |
參數2 | 需要連接的數據庫名 |
Jika pangkalan data telah diisi pada langkah pertama, tidak perlu Jika anda menukar kepada pangkalan data lain, anda tidak perlu melakukan langkah ketiga.
Langkah 4: Tetapkan set aksara
類型 | 說明 |
---|---|
函數 | mysqli_set_charset |
功能 | 設置與mysql服力器連接,結果,校驗字符集 |
參數1 | 傳入mysqli_connect返回的資源 |
參數2 | 字符集類型 |
Untuk mendapatkan nota lanjut, sila beri perhatian kepada buku "13.6 Ultimate Solution to Garbled Data Display"
Langkah 5: Sediakan pernyataan SQL
sebenarnya adalah rentetan pernyataan SQL.
Contohnya:
<?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 ?>
Kami biasanya menetapkan pembolehubah untuk digunakan dalam pernyataan SQL. Walau bagaimanapun, terdapat ralat dalam pembolehubah atau pernyataan SQL, yang sangat sukar untuk diselesaikan.
Kami menambah langkah ini berdasarkan pengalaman kerja sebenar.
Jika ralat dilaporkan semasa melaksanakan langkah ini, kami boleh mencetak pernyataan SQL dan menampalnya ke dalam phpMyAdmin atau alatan yang berkaitan.
Apabila menyelesaikan masalah, jika pelaksanaan berjaya, ini bermakna masalahnya bukan pada pernyataan SQL. Jika pelaksanaan gagal, semak penyataan SQL dengan teliti.
Langkah 6: Hantar pernyataan SQL
類型 | 說明 |
---|---|
函數 | mysqli_query |
功能 | 發(fā)送SQL語句 |
參數1 | 傳入mysqli_connect返回的資源 |
參數2 | 傳入發(fā)送的SQL語句 |
Pernyataan SQL disediakan dan perlu dihantar ke pelayan MySQL melalui mysqli_query.
Pelayan MySQL akan melaksanakan pernyataan SQL yang dihantar untuk pelaksanaan.
Langkah 7: Tentukan sama ada pelaksanaan adalah normal atau merentasi data
Baca
Dalam langkah 6, penyataan kategori pilih dihantar, dan keputusan biasanya memerlukan untuk dikeluarkan dan dipaparkan. Anda perlu menggunakan fungsi yang merentasi data paparan.
類型 | 說明 |
---|---|
函數 | mysqli_fetch_array |
功能 | 得到result結果集中的數據,返回數組進行便利 |
參數1 | 傳入查詢出來的結果變量 |
參數2 | 傳入MYSQLI_NUM返回索引數組,MYSQLI_ASSOC返回關聯數組,MYSQLI_BOTH返回索引和關聯 |
類型 | 說明 |
---|---|
函數 | mysqli_fetch_assoc |
功能 | 得到result結果集中的數據,返回關聯數組進行便利 |
參數1 | 傳入查詢出來的結果變量 |
類型 | 說明 |
---|---|
函數 | mysqli_fetch_row |
功能 | 得到result結果集中的數據,返回索引數組進行便利 |
參數1 | 傳入查詢出來的結果變量 |
類型 | 說明 |
---|---|
函數 | mysqli_fetch_object |
功能 | 得到result結果集中的數據,返回對象進行遍歷 |
參數1 | 傳入查詢出來的結果變量 |
類型 | 說明 |
---|---|
函數 | mysqli_num_rows |
功能 | 返回查詢出來的結果總數 |
參數1 | 傳入查詢出來的結果變量 |
類型 | 說明 |
---|---|
函數 | mysqli_num_rows |
功能 | 返回查詢出來的結果總數 |
參數1 | 傳入查詢出來的結果變量 |
注 | 實際工作中用得非常少,了解 |
Tulis
Dalam langkah 6, jika penyata sisipan dihantar, anda biasanya perlu mengetahui sama ada pelaksanaan berjaya, atau dapatkan ID yang ditambah sendiri pada masa yang sama.
類型 | 說明 |
---|---|
函數 | mysqli_fetch_field |
功能 | 遍歷數據行 |
參數1 | 傳入查詢出來的結果變量 |
Ubah suai dan padam
Dalam langkah 6, jika penyata kemas kini dan padam kategori dihantar. Hanya perlu menentukan sama ada pelaksanaan itu berjaya.
Kami menyenaraikan fungsi yang biasa digunakan ini dalam jadual data untuk disemak oleh semua orang.
Langkah 8: Tutup pangkalan data
類型 | 說明 |
---|---|
函數 | mysqli_close |
功能 | 關閉數據庫連接 |
參數1 | 傳入mysqli_connect返回的資源 |
Sambungan pangkalan data ialah jenis sumber. Kami memberitahu anda mengenainya apabila kami menerangkan jenis sumber dalam bab sebelumnya. Semua jenis sumber yang terlibat sama ada dibuka atau ditutup. Ini memastikan PHP memproses dan mengitar semula sumber dengan lebih cekap.
Oleh itu, selepas sambungan pangkalan data berjaya, tidak perlu menggunakannya. Kita boleh menutup sambungan ini.
Lain-lain: Paparkan fungsi maklumat pelayan
類型 | 說明 |
---|---|
函數 | mysqli_get_server_info |
功能 | 返回服務器信息 |
參數1 | 傳入mysqli_connect返回的資源 |
類型 | 說明 |
---|---|
函數 | mysqli_get_server_version |
功能 | 返回服務器版本 |
參數1 | 傳入mysqli_connect返回的資源 |
Nota:
Mysqli hanya perlu mempelajari kaedah prosedur. Dalam kerja sebenar peringkat berorientasikan objek, penggunaan objek mysqli telah ditinggalkan sepenuhnya, dan sebaliknya objek PDO digunakan untuk menyambung ke pangkalan data.