Php 如果提供的数据在mySQL中不为空,则更新字段
我只想更新我的密码字段,前提是输入中的密码不为NULL,但同时“username”可以在表中更新 这是我当前的PHP代码:Php 如果提供的数据在mySQL中不为空,则更新字段,php,mysql,codeigniter,Php,Mysql,Codeigniter,我只想更新我的密码字段,前提是输入中的密码不为NULL,但同时“username”可以在表中更新 这是我当前的PHP代码: UPDATE `my_tbl` SET `username`= '".$dataArray['username']."', `password` = IF( IS NULL('".$dataArray['password']."'), `password`, '".$dataArray['password']."') WHERE `id` = ".$dataA
UPDATE `my_tbl`
SET `username`= '".$dataArray['username']."', `password` = IF( IS NULL('".$dataArray['password']."'),
`password`, '".$dataArray['password']."')
WHERE `id` = ".$dataArray['id']
使用串联来解决这个问题
$sql= UPDATE `my_tbl` SET `username`= '".$dataArray['username']."',
`password` = IF( IS NULL('".$dataArray['password']."'), `password`, '".$dataArray['password']."')
WHERE `id` = ".$dataArray['id'];
将此查询更改为
$condition="";
if($dataArray['password'] != ""){
$condition=" , `password` = '".$dataArray['password']."'";
}
$sql= "UPDATE `my_tbl` SET `username`= '".$dataArray['username'] ."' ".$condition."
WHERE `id` = ".$dataArray['id'];
echo $sql;
使用串联来解决这个问题
$sql= UPDATE `my_tbl` SET `username`= '".$dataArray['username']."',
`password` = IF( IS NULL('".$dataArray['password']."'), `password`, '".$dataArray['password']."')
WHERE `id` = ".$dataArray['id'];
将此查询更改为
$condition="";
if($dataArray['password'] != ""){
$condition=" , `password` = '".$dataArray['password']."'";
}
$sql= "UPDATE `my_tbl` SET `username`= '".$dataArray['username'] ."' ".$condition."
WHERE `id` = ".$dataArray['id'];
echo $sql;
使用codeigniter活动记录:
$data['username'] = $dataArray['username'];
if(!empty($dataArray['password'])) {
$data['password'] = $dataArray['password'];
}
$this->db->where('id', $dataArray['id']);
$this->db->update('my_tbl',$data);
使用codeigniter活动记录:
$data['username'] = $dataArray['username'];
if(!empty($dataArray['password'])) {
$data['password'] = $dataArray['password'];
}
$this->db->where('id', $dataArray['id']);
$this->db->update('my_tbl',$data);
password=coalescepasswordparam,passwordIF应为IIF?@RST请不要假设password=coalescepasswordparam,passwordIF应为IIF?@RST请不要假设您为什么重复回答?抱歉,相同的代码,但在连接之前多次修改而不使用逗号可能会出错..为什么重复回答?抱歉,相同的代码,但在没有逗号的情况下进行了多次修改,在连接之前可能会出现错误。。