mysqli_stmt::prepare
(mysqli_stmt_prepare)準備一條SQL語句以便執行
函數名稱:mysqli_stmt::prepare()
適用版本:PHP 5, PHP 7
函數描述:該函數用於準備執行一條預處理SQL語句。
語法:bool mysqli_stmt::prepare(string $query)
參數:
返回值:如果準備成功,返回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 = "john@example.com"; $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語句和綁定的參數值。