Задать вопрос
@freelion93

SQLSTATE[HY093] как исправить ошибку?

UPDATE. PHP строю sql запрос:
$query = $conn->update('myapp_state')->set('prodid', '?')->where('objid = ?')->setParameter(0, $el['prod_id'])->setParameter(1, $el['object_id']);

Ошибка:
SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens,

Что я делаю не так?
  • Вопрос задан
  • 1260 просмотров
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
@freelion93 Автор вопроса
для выражения set требуется созданный заранее параметр, не получится использовать setParameter

$prodid= $el['prod_id'];
$prodidParam = $conn->createNamedParameter($prodid);
$objid = $el['object_id']
objidParam = $conn->createNamedParameter($objid );

$query= $conn->update('myapp_filestate')->set('prodid', $prodidParam)->where('objid = ' . $objid . '');
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
$query = $conn->update('myapp_state')->
set('prodid', '?1')->
where('objid = ?2')->
setParameter(1, $el['prod_id'])->
setParameter(2, $el['object_id']);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽