遇到 mysqli 的非数值



遇到的非数字值

第 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 总是会给你一个类型非数字的字符串。

情况 $competitor 1 ://竞争对手 1 胜 $result = $resultwin 1;

$won1 = get_post_meta($competitor1, 'won', true);
update_post_meta($competitor1, 'won', $won1 + 1);
wps_update_history ( $competitor1, 'won', '', $lastIP );
update_post_meta($competitor1, 'lasttimestampbattle', current_time( "timestamp" ) );
$lost2 = get_post_meta($competitor2, 'lost', true);
update_post_meta($competitor2, 'lost', $lost2 + 1);
wps_update_history ( $competitor2, 'lost', '', $lastIP );
if ($haswon != "") {
// get actual post title
$postdata = get_post($competitor1);
if ( strlen ( $postdata->post_title ) > 0 )
$result = $postdata->post_title . " " . $haswon;
}
break;

相关内容

  • 没有找到相关文章

最新更新