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:
类型 | 说明 |
---|---|
函数 | 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.
类型 | 说明 |
---|---|
函数 | mysqli_errno |
功能 | 返回连接错误号,无错误返回0 |
参数1 | 传入mysqli_connect返回的资源 |
类型 | 说明 |
---|---|
函数 | mysqli_error |
功能 | 返回连接错误字符串 |
参数1 | 传入mysqli_connect返回的资源 |
类型 | 说明 |
---|---|
函数 | 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.
类型 | 说明 |
---|---|
函数 | 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"
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.
类型 | 说明 |
---|---|
函数 | mysqli_query |
功能 | 发送SQL语句 |
参数1 | 传入mysqli_connect返回的资源 |
参数2 | 传入发送的SQL语句 |
Pernyataan SQL disediakan dan perlu dihantar ke pelayan MySQL melalui mysqli_query.
Pelayan MySQL akan melaksanakan pernyataan SQL yang dihantar untuk pelaksanaan.
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 | 传入查询出来的结果变量 |
注 | 实际工作中用得非常少,了解 |
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 | 传入查询出来的结果变量 |
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.
类型 | 说明 |
---|---|
函数 | 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.
类型 | 说明 |
---|---|
函数 | 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.