Bermula dengan ...LOG MASUK

Bermula dengan PHP - Menyambung ke MySQL

PHP 5 dan ke atas disyorkan untuk menggunakan kaedah berikut untuk menyambung ke MySQL:

sambungan MySQL ("i" bermaksud bertambah baik)

PDO (Objek Data PHP)

Dalam versi awal PHP kami menggunakan sambungan MySQL. Walau bagaimanapun, sambungan ini telah ditamatkan pada tahun 2012.

Perlukah saya menggunakan MySQLi atau PDO?

Jika anda memerlukan jawapan ringkas, "gunakan mana-mana yang biasa anda gunakan" .

MySQLi dan PDO mempunyai kelebihan tersendiri:

PDO digunakan dalam 12 pangkalan data yang berbeza, dan MySQLi hanya menyasarkan pangkalan data MySQL.

Jadi, jika projek anda perlu bertukar antara berbilang pangkalan data, adalah disyorkan untuk menggunakan PDO, supaya anda hanya perlu mengubah suai rentetan sambungan dan pernyataan pertanyaan jabatan. Dengan MySQLi, jika anda menggunakan pangkalan data yang berbeza, anda perlu menulis semula semua kod, termasuk pertanyaan.

Kedua-duanya berorientasikan objek, tetapi MySQLi juga menyediakan antara muka API.

Kedua-duanya menyokong kenyataan yang disediakan. Kenyataan yang disediakan boleh menghalang suntikan SQL dan sangat penting untuk keselamatan projek web.

MySQLi dan PDO menyambung ke contoh MySQL

Dalam bab ini dan bab-bab berikutnya, kami akan menggunakan tiga kaedah berikut untuk menunjukkan Operasi PHP MySQL:

MySQLi (berorientasikan objek)

MySQLi (berorientasikan prosedur)

PDO

Pemasangan MySQL

Linux dan Windows: Dalam kebanyakan kes, sambungan MySQLi dipasang secara automatik apabila pakej mysql php5 dipasang.

Untuk butiran pemasangan, sila semak: http://php.net/manual/en/mysqli.installation.php

Anda boleh menyemak sama ada pemasangan berjaya melalui phpinfo():

Pemasangan PDO

Untuk butiran pemasangan, sila lihat: http://php.net/manual/en/pdo.installation.php

Anda boleh menyemak sama ada pemasangan berjaya melalui phpinfo():

Sambung ke MySQL

Sebelum kami mengakses MySQL pangkalan data, kita perlu menyambung dahulu Ke pelayan pangkalan data:

Contoh (MySQLi - Berorientasikan Objek)

<?php
$servername = "localhost";  //服务器
$username = "username";    //用户名
$password = "password";    //密码

// 创建连接
$conn = new mysqli($servername, $username, $password);

// 检测连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
} 
echo "连接成功";
?>

NotaDalam contoh Berorientasikan Objek di atas $connect_error telah ditambahkan dalam PHP 5.2.9 dan 5.3.0. Jika anda memerlukan keserasian dengan versi terdahulu, sila gunakan penggantian kod berikut:
// Kesan sambungan
jika (mysqli_connect_error()) {
die("Sambungan pangkalan data gagal: " . mysqli_connect_error());
}

Instance (MySQLi - Berorientasikan Prosedur)

<?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();
}
?>

Perhatikan bahawa dalam contoh PDO di atas kami telah menentukan pangkalan data ( myDB). PDO perlu menetapkan nama pangkalan data semasa proses sambungan. Jika tidak dinyatakan, pengecualian akan dilemparkan.

Tutup sambungan

Sambungan akan ditutup secara automatik selepas skrip dilaksanakan. Anda juga boleh menggunakan kod berikut untuk menutup sambungan:

Instance (MySQLi - Berorientasikan Objek)

$conn->close();

Instance (MySQLi - Berorientasikan Prosedur)

mysqli_close($conn);

Instance (PDO)

$conn = null;


bahagian seterusnya
<?php echo ""hello world"; ?>
babperisian kursus