I'm trying to simply update a table with dynamic variables and I am stuck, I have read and searched how to do dynamic binding and have found out that I need to use call_user_func_array() but I tried to use it as below and it still doesn't work, can someone show me how to use it?
$a = array('ssi');
$b = array($_POST['h'], $_POST['m'], 2);
$params = array_merge($a, $b);
$stmt = $db->prepare("UPDATE `test` set field_1 = ?, field_2 = ? where id = ?");
call_user_func_array(array(&$stmt, 'bind_param'), $params);
$stmt->execute();
I am getting the below error
Warning: Parameter 2 to mysqli_stmt::bind_param() expected to be a reference, value given
can someone help me out? I have looked at other similar questions and still stuck.
var_dump($stmt);PS: Why did you put&in front of$stmt?mysqlithen, if PDO avoids that workaround?bool(false)and I was able to fix it since I had the table name wrong. now I am getting ` Warning: Parameter 2 to mysqli_stmt::bind_param() expected to be a reference, value given` I just copied it from other answers.