когда я пытаюсь сделать код ниже, он дает мне предупреждение
mysqli_stmt::bind_param(): Number of elements in type definition string doesn't match number of bind variables $stmt = $mysqli->prepare('SELECT * FROM users WHERE lname = ? AND fname = ?'); $type = "ss"; $param = array("Maq","bool"); $params[] = &$type; $params[] = &$param; call_user_func_array( array($stmt, 'bind_param'), $params );
я действительно не знаю, почему это происходит. Я читаю много вопросов с тем же заголовком в stackoverflow, но некоторые из них разделены запятыми или нуждаются в большем количестве типов, но в моем случае я думаю, что это правильно, но почему я продолжаю получать предупреждения?
$stmt = $mysqli->prepare('SELECT * FROM users WHERE lname = ? AND fname = ?'); $stmt->bind_param('ss', $param[0], $param[1]); $stmt->execute(); //other version $stmt = $mysqli->prepare('SELECT * FROM users WHERE lname = ? AND fname = ?'); $type = "ss"; $names = array("Maq", "bool"); $params = array(&$type, &$names[0], &$names[1]); call_user_func_array(array($stmt, 'bind_param'), $params);