mysql 中的绑定参数
Binding parameters in mysql
我正在尝试了解 MySQL 中的绑定参数。我尝试了此测试,但出现错误 "Call to a member function bind_param() on a non-object".
我是不是做错了什么?
这是更新后的代码:
$sql = "INSERT INTO users (field1, field2, field3) VALUES (?, ?, ?)";
connect();
$stmt = $conn->prepare($sql);
$stmt->bind_param("sss", $value1, $value2, $value3);
$value1 = "test1";
$value2 = "test2";
$value3 = "test3";
$stmt->execute();
这里是 connect()
函数:
function connect(){
global $conn;
$conn = new mysqli(DBHOST, DBUSER, DBPASS, DBNAME);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
}
要在 PDO 中的准备好的查询中绑定参数,将包含您的参数的数组传递给执行函数:
$result = $conn->prepare($sql);
$result->execute(array($value1, $value2, $value3));
更新
对于mysqli版本:
connect();
$result = $conn->prepare($sql);
$result->bind_param('sss', $value1, $value2, $value3);
$result->execute();
我正在尝试了解 MySQL 中的绑定参数。我尝试了此测试,但出现错误 "Call to a member function bind_param() on a non-object".
我是不是做错了什么?
这是更新后的代码:
$sql = "INSERT INTO users (field1, field2, field3) VALUES (?, ?, ?)";
connect();
$stmt = $conn->prepare($sql);
$stmt->bind_param("sss", $value1, $value2, $value3);
$value1 = "test1";
$value2 = "test2";
$value3 = "test3";
$stmt->execute();
这里是 connect()
函数:
function connect(){
global $conn;
$conn = new mysqli(DBHOST, DBUSER, DBPASS, DBNAME);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
}
要在 PDO 中的准备好的查询中绑定参数,将包含您的参数的数组传递给执行函数:
$result = $conn->prepare($sql);
$result->execute(array($value1, $value2, $value3));
更新
对于mysqli版本:
connect();
$result = $conn->prepare($sql);
$result->bind_param('sss', $value1, $value2, $value3);
$result->execute();