Intereting Posts
Как отредактировать то, что отображается в шаблоне метадолей одного продукта Woocommerce? Являются ли @imagecreatefromjpeg и imagejpeg () эффективными для предотвращения загрузки пользователями изображений с вредоносным кодом php внутри них? PHPExcel как установить значение ячейки динамически PHP – слияние дубликатов ключей массива в многомерном массиве 2 Column Mysql Диапазон дат Поиск в PHP Добавление столбца флажка в таблицы со значениями, динамически генерируемыми из базы данных в php Данные формы POST jQuery PHP для чтения значения DB, JS для его увеличения, AJAX для сохранения в DB, ​​но почему он по умолчанию 0.0 до обновления страницы? Определить 2D-массив с циклами в php Получить схему базы данных с одним запросом? Выполнить код, когда модель Eloquent извлекается из базы данных php mail на MAMP Как показать ajax загрузку gif анимации во время загрузки страницы? Изменение вложенного (многомерного) массива в пары ключ => значение в PHP Laravel – правило валидации max не работает над загруженным изображением

Php mysqi bind_param Число переменных не соответствует количеству параметров в подготовленном операторе

Это должно быть ошибкой новичка, но я этого не вижу. Вот фрагмент моего кода:

$mysqli = mysqli_connect($dbCredentials['hostname'], $dbCredentials['username'], $dbCredentials['password'], $dbCredentials['database']); if ($mysqli->connect_error) { throw new exception( 'Connect Error (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error); } $stmt = $mysqli->prepare("SELECT DISTINCT model FROM vehicle_types WHERE year = ? AND make = '?' ORDER by model"); $stmt->bind_param('is', $year, $make); $stmt->execute(); 

Когда я повторяю значения для $ year и $ make, я вижу значения, но когда я запускаю этот скрипт, я получаю нулевое значение, и в моем файле журнала появляется следующее предупреждение:

 PHP Warning: mysqli_stmt::bind_param(): Number of variables doesn't match number of parameters in prepared statement 

В этом случае год находится в базе данных типа int (10), и я попытался передать копию, которая была отлита как int, а make – это varchar (20) с кодировкой utf8_unicode_ci. Я что-то упускаю?

Related of "Php mysqi bind_param Число переменных не соответствует количеству параметров в подготовленном операторе"

Ваше подготовленное заявление неверно, оно должно быть:

 $stmt = $mysqli->prepare("SELECT DISTINCT model FROM vehicle_types WHERE year = ? AND make = ? ORDER by model"); 

Одиночные цитаты сделали это? значение не маркер. Это будет строка, потому что вы выполняете bind_param('is' как bind_param('is'