Ошибка подготовленных сообщений Mysqli

Я немного запутался в первом использовании привязки динамических параметров mysqli. Мой запрос

 UPDATE tb_hotel SET hotel_name = ?, hotel_overview = ?, hotel_active = ?,
 hotel_location_description = ?, hotel_location_gmap = ?, hotel_cm_mapping_id = ?
 WHERE hotel_id = ?

Когда я сбрасываю массив, который я передаю в call_user_func_array,

  array (size=8)
  0 => string 'ssisssi' (length=7)
  1 => &string 'sdfsfdsf' (length=8)
  2 => &string 'sdfdsf' (length=6)
  3 => &int 0
  4 => &string 'dsfdsfds' (length=8)
  5 => &string 'fsdfsdf' (length=7)
  6 => &string 'fsdfdsfsdf' (length=10)
  7 => &int 17

Затем я передаю их в call_user_func_array, как показано ниже.

call_user_func_array(array($stmt, 'bind_param'), $param_array_bind);

Я получаю сообщение об ошибке "Предупреждение: mysqli_stmt:: bind_param(): Число элементов в строке определения типа не совпадает с числом переменных связывания в"

Кто-нибудь может пролить свет на меня.

Ответы

Ответ 1

Вы помещаете 7 полей в код MySQL, а в вашем массиве 8 элементов. Это проблема.