使用mysqli 準備語句
準備語句入門
準備語句入門準備語句入門
$name = 'one'; $age = 1; $stmt = $mysqli->prepare("INSERT INTO users (name, age) VALUES (?,?)"); // Bind parameters (typehint: string, integer) $stmt->bind_param('si', $name, $age); // Now you can execute $stmt->execute();
綁定參數
準備好的語句要求您在執行之前綁定參數。此程序將外部變數與 SQL 查詢中的佔位符 (?) 相關聯。準備語句需要 mysqli 嗎?
是的,需要 mysqli用來準備好的陳述。
$mysqli = new mysqli("localhost", "root", "root", "test"); if ($mysqli->connect_errno) { echo "Connection failed: " . $mysqli->connect_error; }
完成範例
$stmt = $mysqli->prepare("INSERT INTO users (name, age) VALUES (?,?)"); // Bind parameters (typehint: string, integer) $stmt->bind_param('si', $name, $age); // Insert row $stmt->execute();
$stmt = $mysqli->prepare("SELECT * FROM users WHERE name = ?"); $stmt->bind_param('s', $name); $stmt->execute(); if ($stmt->errno) { echo "Error: " . $stmt->error; } else { $result = $stmt->get_result(); } // Process result
以上是為什麼我的 mysqli 準備語句失敗,如何正確綁定參數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!