怎樣用php mysql類操作數(shù)據(jù)庫表

PHP
小樊
82
2024-09-22 00:15:39
欄目: 云計(jì)算

要使用PHP和MySQL類操作數(shù)據(jù)庫表,首先確保已經(jīng)安裝了MySQL服務(wù)器和PHP的MySQL擴(kuò)展(如MySQLi或PDO)。以下是使用MySQLi擴(kuò)展操作數(shù)據(jù)庫表的示例步驟:

  1. 連接到MySQL數(shù)據(jù)庫服務(wù)器:
$servername = "localhost"; // 服務(wù)器地址
$username = "your_username"; // 用戶名
$password = "your_password"; // 密碼
$dbname = "your_database"; // 數(shù)據(jù)庫名

// 創(chuàng)建連接
$conn = new mysqli($servername, $username, $password, $dbname);

// 檢查連接
if ($conn->connect_error) {
    die("連接失敗: " . $conn->connect_error);
}
echo "連接成功";
  1. 創(chuàng)建數(shù)據(jù)表:
$sql = "CREATE TABLE users (
    id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(30) NOT NULL,
    email VARCHAR(50) NOT NULL,
    password VARCHAR(255) NOT NULL
)";

if ($conn->query($sql) === TRUE) {
    echo "數(shù)據(jù)表創(chuàng)建成功";
} else {
    echo "創(chuàng)建數(shù)據(jù)表錯(cuò)誤: " . $conn->error;
}
  1. 插入數(shù)據(jù):
$username = "testuser";
$email = "testuser@example.com";
$password = password_hash("testpassword", PASSWORD_DEFAULT);

$sql = "INSERT INTO users (username, email, password) VALUES (?, ?, ?)";

$stmt = $conn->prepare($sql);
$stmt->bind_param("sss", $username, $email, $password);

if ($stmt->execute() === TRUE) {
    echo "新記錄插入成功";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

$stmt->close();
  1. 查詢數(shù)據(jù):
$sql = "SELECT id, username, email, password FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // 輸出每行數(shù)據(jù)
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["username"]. " - Email: " . $row["email"]. " - Password: " . $row["password"]. "<br>";
    }
} else {
    echo "0 結(jié)果";
}
$result->free();
  1. 更新數(shù)據(jù):
$id = 1;
$new_username = "updated_username";
$new_email = "updated_email@example.com";

$sql = "UPDATE users SET username = ?, email = ? WHERE id = ?";

$stmt = $conn->prepare($sql);
$stmt->bind_param("sss", $new_username, $new_email, $id);

if ($stmt->execute() === TRUE) {
    echo "記錄更新成功";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

$stmt->close();
  1. 刪除數(shù)據(jù):
$id = 1;

$sql = "DELETE FROM users WHERE id = ?";

$stmt = $conn->prepare($sql);
$stmt->bind_param("i", $id);

if ($stmt->execute() === TRUE) {
    echo "記錄刪除成功";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

$stmt->close();
  1. 關(guān)閉數(shù)據(jù)庫連接:
$conn->close();

請(qǐng)注意,這只是一個(gè)簡單的示例。在實(shí)際項(xiàng)目中,建議使用PHP框架(如Laravel或Symfony)和ORM(對(duì)象關(guān)系映射)庫來操作數(shù)據(jù)庫表,以提高代碼的可維護(hù)性和安全性。

0