От mysqli::prepare
документи
:
Маркерите на параметри трябва да бъдат обвързани с променливите на приложението с помощта на mysqli_stmt_bind_param() и/или mysqli_stmt_bind_result() преди да изпълнят оператора или да извлекат редове.
т.е.:
$name = 'one';
$age = 1;
$stmt = $mysqli->prepare("INSERT INTO users (name, age) VALUES (?,?)");
// bind parameters. I'm guessing 'string' & 'integer', but read documentation.
$stmt->bind_param('si', $name, $age);
// *now* we can execute
$stmt->execute();