php将null写入数据表,php – MySQL bind_param将NULL写入表

问题:尽管我的$settings数组中包含值(int),但当值为0和2时,

MySQL会将NULL写入表中.

作为参考,$settings数组中的每个索引都是[0] = max和[1] = min的数组.

public function updateAdaptiveArmour($gameid, $shipid, $settings){

foreach ($settings as $key => $value){

debug::log($key." ".$value[0]." ".$value[1]);

//just to show the contents

// [561103190304f][2015-10-04 12:44:41] particle 4 2

// [56110319035b3][2015-10-04 12:44:41] laser 0 0

// [56110319035b3][2015-10-04 12:44:41] molecular 0 0

}

try {

if ($stmt = $this->connection->prepare(

"UPDATE

tac_adaptivearmour

SET

particlealloc = ?,

laseralloc = ?,

molecularalloc = ?

WHERE

gameid = ?

AND shipid = ?

"

))

{

$stmt->bind_param('iiiii', $settings[0][1], $settings[1][1], $settings[2][1], $gameid, $shipid);

$stmt->execute();

$stmt->close();

}

}

catch(Exception $e) {

throw $e;

}

}

理想情况下,对于此示例,我希望UPDATE为2/0/0而不是null / null / null.

最佳答案 您的数组填充如下:

$settings = [

'particle' => [4, 2],

'laser' => [0, 0],

'molecular' => [0, 0]

];

我希望能回答这个问题,而无需进一步解释.

它将固定如下:

$stmt->bind_param('iiiii',

$settings['particle'][1],

$settings['laser'][1],

$settings['molecular'][1],

$gameid,

$shipid

);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值