色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

php sql連接

孔世廣1年前6瀏覽0評論
PHP與MySQL是一對不可分割的存在,其中,SQL連接技術是兩者之間極其重要的橋梁。本文就來簡單講解一下如何使用PHP代碼進行SQL連接。
PHP與MySQL的連接需要通過一些步驟,首先需要建立連接、然后選擇數據庫、最后發出SQL查詢語句。其中,最重要的是建立連接。以下為示例代碼:
<?php
$servername = "localhost"; //數據庫地址
$username = "username"; //數據庫用戶名
$password = "password"; //數據庫密碼
$dbname = "myDB"; //數據庫名
//創建連接
$conn = new mysqli($servername, $username, $password, $dbname);
//檢查連接
if ($conn->connect_error) {
die("連接失敗: " . $conn->connect_error);
}
echo "連接成功";
?>

以上代碼用到了mysqli函數進行連接。其中,$servername是數據庫地址,$username是數據庫用戶名,$password是數據庫密碼,$dbname是數據庫名。通過new mysqli建立連接,若連接失敗則輸出錯誤信息;若成功,則輸出“連接成功”。你還可以使用PDO函數建立連接。以下為示例代碼:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// 設置 PDO 錯誤模式為異常
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "連接成功";
}
catch(PDOException $e)
{
echo "連接失敗: " . $e->getMessage();
}
?>

同樣是建立連接,使用了try...catch進行異常處理。如果連接失敗,會跑出PDOException異常。
連接上數據庫后,還需要選擇數據庫。使用mysqli函數和PDO函數的方法不同。以下為mysqli函數的示例代碼:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
$conn = new mysqli($servername, $username, $password);
// 檢查連接
if ($conn->connect_error) {
die("連接失敗: " . $conn->connect_error);
}
// 選擇數據庫
$sql = "USE $dbname";
if ($conn->query($sql) === TRUE) {
echo "數據庫選擇成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
?>

以上代碼中使用了$sql = "USE $dbname"選擇了數據庫。如果選擇數據庫成功,則輸出“數據庫選擇成功”,否則輸出錯誤信息。
以下為PDO函數的示例代碼:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// 選擇數據庫
$sql = "USE $dbname";
$conn->exec($sql);
echo "數據庫選擇成功";
}
catch(PDOException $e)
{
echo "連接失敗: " . $e->getMessage();
}
?>

同mysqli函數一樣,首先通過PDO建立連接,然后通過$conn->exec($sql)選擇數據庫。如果選擇成功,則輸出“數據庫選擇成功”。
最后,我們需要進行SQL查詢語句。以下為mysqli函數的示例代碼:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
$conn = new mysqli($servername, $username, $password, $dbname);
// 檢查連接
if ($conn->connect_error) {
die("連接失敗: " . $conn->connect_error);
}
// SQL 查詢
$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 輸出數據
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "0 結果";
}
$conn->close();
?>

以上代碼使用了SELECT語句查詢數據庫,將結果輸出。如果查詢的結果不為0,則輸出結果;否則輸出“0 結果”。
以下為PDO函數的示例代碼:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// SQL查詢
$stmt = $conn->prepare("SELECT id, firstname, lastname FROM MyGuests");
$stmt->execute();
// 設置結果集為關聯數組
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
// 輸出數據
foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) {
echo $v;
}
}
catch(PDOException $e)
{
echo "連接失敗: " . $e->getMessage();
}
$conn = null;
echo "</table>";
?>

以上代碼同樣使用SELECT語句進行查詢,輸出結果。需要注意的是,此處使用了PDO編寫的TableRows類進行輸出結果。
最后,我們需要提醒的是,在進行SQL查詢時,請不要遺漏MySQL注入問題。以下為一段預防SQL注入的代碼:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 創建連接
$conn = new mysqli($servername, $username, $password, $dbname);
// 檢查連接
if ($conn->connect_error) {
die("連接失敗: " . $conn->connect_error);
}
// 預處理及綁定
$stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email) VALUES (?, ?, ?)");
$stmt->bind_param("sss", $firstname, $lastname, $email);
// 設置參數并執行
$firstname = "John";
$lastname = "Doe";
$email = "john@example.com";
$stmt->execute();
$firstname = "Mary";
$lastname = "Moe";
$email = "mary@example.com";
$stmt->execute();
$firstname = "Julie";
$lastname = "Dooley";
$email = "julie@example.com";
$stmt->execute();
echo "新記錄插入成功";
$stmt->close();
$conn->close();
?>

以上代碼使用了prepare和bind_param方法進行數據過濾,避免了SQL注入問題。
總結一下,PHP與MySQL之間的連接需要通過以下步驟:建立連接、選擇數據庫、SQL查詢語句。其中,建立連接是最為重要的。在進行SQL查詢時需要注意MySQL注入問題。