Я не могу понять, почему я получаю ошибку: mysqli_stmt::bind_param(): Number of variables doesn't match number of parameters in prepared statement
Я следовал этому примеру:
Передача массива в запрос с использованием предложения WHERE
, если у вас есть любые идеи, которые были бы удивительными!
$sql="SELECT pid,title,description,location FROM jobs WHERE status='o'";
if(isset($_POST['category'])){
$category_filter = join(',', array_fill(0, count($_POST['category']), '?'));
$sql .= " AND category IN ('.$category_filter.')";
}
$sql.="ORDER BY job_date DESC";
$stmt = $conn->prepare($sql);
$stmt->bind_param(str_repeat('s', count($_POST['category'])), ...$_POST['category']);
$stmt->execute();
$stmt->bind_result($pid,$title,$description,$location);