查詢

mysqli_stmt::prepare()函式—用法及示例

「 準備執行一條預處理SQL語句 」


函式名稱:mysqli_stmt::prepare()

適用版本:PHP 5, PHP 7

函式描述:該函式用於準備執行一條預處理SQL語句。

語法:bool mysqli_stmt::prepare(string $query)

引數:

  • query:要準備的SQL查詢語句,可以包含佔位符(?)來代表引數。

返回值:如果準備成功,返回true;否則返回false。

示例:

// 建立資料庫連線
$mysqli = new mysqli("localhost", "username", "password", "database");

// 檢查連線是否成功
if ($mysqli->connect_errno) {
    echo "連線資料庫失敗: " . $mysqli->connect_error;
    exit();
}

// 準備預處理語句
$query = "INSERT INTO users (name, email) VALUES (?, ?)";
$stmt = $mysqli->prepare($query);

if ($stmt) {
    // 繫結引數
    $name = "John Doe";
    $email = "[email protected]";
    $stmt->bind_param("ss", $name, $email);

    // 執行語句
    $stmt->execute();

    // 檢查是否執行成功
    if ($stmt->affected_rows > 0) {
        echo "插入成功!";
    } else {
        echo "插入失敗!";
    }

    // 關閉語句
    $stmt->close();
} else {
    echo "準備語句失敗: " . $mysqli->error;
}

// 關閉資料庫連線
$mysqli->close();

上述示例中,我們首先建立了一個mysqli物件來連線資料庫。然後,我們使用prepare()函式準備了一條預處理語句,其中包含兩個佔位符(?)。接下來,我們使用bind_param()函式繫結了兩個引數的值。然後,我們使用execute()函式執行了預處理語句。最後,我們檢查了執行結果並輸出相應的訊息。最後,我們關閉了預處理語句和資料庫連線。

注意:在實際使用中,你需要根據具體情況修改資料庫連線引數、SQL語句和繫結的引數值。

補充糾錯
上一個函式: mysqli_stmt::reset()函式
熱門PHP函式
分享連結