Всё, я разобрался.
Оказывается вместо знака "-" скрипт пытался вписать в базу html-аналог минуса "−", что, естественно, противоречит типу int. Коварная ошибочка.
Странно, поле типа int, а когда пытаюсь записать в него отрицательное число mysql выдает ошибку.
То есть все дело из-за знака минуса перед числом.
Что-то не понятно...