Мне интересно, почему следующий оператор mysqli работает, даже если я передаю строку и она ожидает целое число.
$id = "A";
$sql = "SELECT m.mandator_id, longname, shortname"
. " FROM mandator m "
. " WHERE mandator_id != ? "
. " ORDER BY mandator_id";
$err = "";
if (!$stmt = $this->con->prepare($sql)) {
$err .= "Prepare failed: (" . $this->con->errno . ") " . $this->con->error;
}
if (!$stmt->bind_param("i", $id)) {
$err .= "Binding parameters failed: (" . $stmt->errno . ") " . $stmt->error;
}
...
Я прошел по коду, но часть "Сбой привязки параметров" не достигнута
Type specification chars
Персонаж |Описание
i |соответствующая переменная имеет тип integer
d |соответствующая переменная имеет тип double
s |соответствующая переменная имеет тип string
b |соответствующая переменная является блобом и будет отправлена в пакетах
Документация