Обнаружено нечисловое значение
в строке номер 51 означает эту строку
это показывает мне ошибку нечисловое значение
->update('purchase',array('item_qty'=>'item_qty'+$item_qty));
function upd_sales($upd_sales)
{
$item_name=$upd_sales['item_name'];
$item_qty=$upd_sales['item_qty'];
$this->db
->where('item_code', $item_name)
->update('purchase',array('item_qty'=>'item_qty'+$item_qty));
}
Попробуйте таким образом, вам нужно написать путь в количестве элементов обновления MySQL
function upd_sales($upd_sales)
{
$item_name=$upd_sales['item_name'];
$item_qty=$upd_sales['item_qty'];
$this->db->where('item_code', $item_name)
->set('item_qty', 'item_qty+'.$item_qty, FALSE);
->update('purchase');
}
function upd_sales($upd_sales)
{
$item_name=$upd_sales['item_name'];
$item_qty=$upd_sales['item_qty'];
$this->db
->where('item_code', $item_name)
->update('purchase',array('item_qty'=>'item_qty'+$item_qty)); //'item_qty is string where as $item_qty in number
}
Это потому, что вы пытаетесь получить сумму строки и числа.
Измените свой код на
function upd_sales($upd_sales)
{
$item_name=$upd_sales['item_name'];
$item_qty=$upd_sales['item_qty'];
$this->db
->where('item_code', $item_name)
->update('purchase',array('item_qty'=> $item_qty));
}
Вы делаете строку + число вместо математической операции
именно на этой линии ->update('purchase',array('item_qty'=>'item_qty'+$item_qty));
function upd_sales($upd_sales)
{
$item_name=$upd_sales['item_name'];
$item_qty=$upd_sales['item_qty'];
$this->db
->where('item_code', $item_name)
->update('purchase',array('item_qty'=>$item_qty));
}
Это не JavaScript
array('item_qty'=>'item_qty'+$item_qty)
Если вы пытаетесь согласиться с +
то есть. В противном случае нет смысла добавлять строки. Может быть, вы хотели это вместо
array('item_qty'=>'item_qty'.$item_qty)
С точкой .
Или, может быть, вам просто нужно его значение.
array('item_qty'=>$item_qty)
Что более вероятно, потому что PHP не заботится о типе переменной, но база данных может и ваша ошибка говорит NON-Numeric
поэтому concat всегда выдаст вам строку, которая не является числовой по своему типу.