BindValue не работает с точкой PHP PDO [дубликат]Php

Кемеровские программисты php общаются здесь
Anonymous
BindValue не работает с точкой PHP PDO [дубликат]

Сообщение Anonymous »


Я пытаюсь использовать bindValue в запросе PHP с PDO и не могу понять, почему это не работает.

Пример:

$key = "user_setores.setor_id = :where_user_setores.setor_id_0"; $значение = 2; $sth->bindValue($key, $value, PDO::PARAM_INT); Этот способ не работает. Получена следующая ошибка:

SQLSTATE[HY093]: неверный номер параметра: параметр не определен Если я просто укажу имя столбца напрямую, это сработает, пример:

$key = "setor_id = :where_setor_id_0"; Чтобы мой код был запущен, мне пришлось выполнить md5($key), чтобы гарантировать, что «точка» будет удалена, поскольку этот ключ используется только в качестве другого идентификатора в привязать.

Мое возмущение: ПОЧЕМУ ЭТО НЕ РАБОТАЕТ, КОГДА МЫ СТАВИМ ТОЧКУ в заполнитель?

А если бы у меня было две таблицы с одинаковыми столбцами, разве я не смог бы использовать bindValue?

Я поискал в документации что-нибудь, что могло бы объяснить ":field", но там ничего не сказано об ограничениях создания этих заполнителей.

Вернуться в «Php»