这是我的控制器:
public function ubah_pameran_belanda()
{
$id=$this->input->post('id');
$nama_kegiatan=$this->input->post('nama_kegiatan');
$file1=$this->input->post('file1');
$file2=$this->input->post('file2');
$file3=$this->input->post('file3');
$file4=$this->input->post('file4');
$file5=$this->input->post('file5');
$tanggal=$this->input->post('tanggal');
$this->Info_pameran_belanda_model->ubahInfoPameranBelanda($id,$nama_kegiatan,$file1,$file2,$file3,$file4,$file5,$tanggal);
redirect('belanda/pameran_belanda');
}
这是我的模型:
function ubahInfoPameranBelanda($id,$nama_kegiatan,$file1,$file2,$file3,$file4,$file5,$tanggal){
$update=$this->db->query("UPDATE pameran_belanda SET id='$id', nama_kegiatan='$nama_kegiatan', file1='$file1', file2='$file2', file3='$file3', file4='$file4', file5='$file5' , tanggal='$tanggal' WHERE id='$id'");
return $update;
}
我在数据库中有5个文件,当我更新2个文件时,为什么缺少3个文件。未修改的文件如何不被空白文件代替?
最简单的解决方案是检查变量是否为空并将其添加到update查询中:
function ubahInfoPameranBelanda($id,$nama_kegiatan,$file1,$file2,$file3,$file4,$file5,$tanggal){
$sql = "UPDATE pameran_belanda SET id='$id', nama_kegiatan='$nama_kegiatan',";
if ($file1) {
$sql .= " file1='$file1',";
}
if ($file2) {
$sql .= " file2='$file2',";
}
// etc.
$sql .= " tanggal='$tanggal' WHERE id='$id'";
return $this->db->query($sql);
}
Alslo,当您从$_POST谨防SQL注入中获取不安全数据时。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。