Параметры привязки в mysql

Я пытаюсь узнать о параметрах привязки в MySQL. Я пробовал этот тест, но я получаю ошибку «Вызов функции-члена bind_param () для необъекта».

Я делаю что-то неправильно?

Вот обновленный код:

$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);
}
}

1

Решение

Чтобы связать параметры в подготовленном запросе в PDO, передайте массив, содержащий ваши параметры, в функцию execute:

$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();

Увидеть http://php.net/manual/en/mysqli-stmt.bind-param.php

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]