Привет!
Проблема: Не происходит запись числовых значений с использованием CIBlockElement::SetPropertyValuesEx();
Текст ошибки:
Для $PROPERTY_VALUES в методе SetPropertyValuesEx используется функция intval(). Таким образом, для строк, в которых не только числа или нет чисел VALUE_ENUM содержит 0 - их запись проходит.
Полный вызов метода CIBlockElement::SetPropertyValuesEx:
Запись не проходит:
Запись проходит, ведь 'VALUE_ENUM' в b_iblock_element_property равно 0.
Если развернуть резервную копию сайта на BitrixVM, то все работает.
Я понимаю, что можно увеличить length поля 'VALUE_ENUM', но будет ли это верным решением проблемы?
Проблема: Не происходит запись числовых значений с использованием CIBlockElement::SetPropertyValuesEx();
Текст ошибки:
Код |
---|
MySQL Query Error: ins ert into b_iblock_element_property (IBLOCK_PROPERTY_ID, IBLOCK_ELEMENT_ID, VALUE, VALUE_ENUM, VALUE_NUM, DESCRIPTION) values (132, 31300, '+11111111111', 11111111111, 11111111111.00, 'Телефон' ) [[1264] Out of range val ue for column 'VALUE_ENUM' at row 4] |
Полный вызов метода CIBlockElement::SetPropertyValuesEx:
Запись не проходит:
Код |
---|
CIBlockElement::SetPropertyValuesEx(1, 1, array("prop" => array(0 => array("VALUE" => 11111111111, "DESCRIPTION" => "DESCRIPTION")))); |
Код |
---|
CIBlockElement::SetPropertyValuesEx(1, 1, array("prop" => array(0 => array("VALUE" => "string", "DESCRIPTION" => "DESCRIPTION")))); |
Я понимаю, что можно увеличить length поля 'VALUE_ENUM', но будет ли это верным решением проблемы?