php - 使用 Codeigniter 更新数据库表中的字段状态

标签 php mysql database codeigniter codeigniter-3

我想将“尚未”状态更新为“已经”

有错误

A Database Error Occurred
Error Number: 1054
Unknown column 'sudah' in 'field list'
UPDATE `tb_peserta` SET `sudah` = '' WHERE `no_pendaftaran` = '13'
Filename: C:/xampp/htdocs/codeigniter/system/database/DB_driver.php
Line Number: 691

我的 Controller

function status_verifikasi($no_pendaftaran){
    $where = array('no_pendaftaran' => $no_pendaftaran);
    $this->M_pendaftar->status_verifikasi($where,'tb_peserta');
    redirect('admin/Ca_pendaftar');}

我的模型

function status_verifikasi($where,$tb_peserta){
    if ($status_verifikasi ='belum') {
       $this->db->set('sudah');
   } else{
       $this->db->set('belum');
   }
   $this->db->where($where);
   $this->db->update($tb_peserta);}

我的看法

<?=anchor('admin/Ca_pendaftar/status_verifikasi/'.$tb_peserta->no_pendaftaran,
              'Konfirmasi', ['class'=>'btn btn-success btn-sm' , 'onclick'=>"return confirm('Ubah status pendaftar ?');"])?>

最佳答案

Codeigniter Set 语法应该是

$this->db->set('column_name','value');

注意:等于=是赋值运算符。要进行比较,您需要使用 == 比较运算符

if ($status_verifikasi == 'belum') { .. }

更新1:

您需要像这样使用选择查询来检查之前的值,然后您需要根据之前的值更新状态。

function status_verifikasi($where,$tb_peserta){

     $this->db->select('status_verifikasi');
     $this->db->from($tb_peserta);
     $this->db->where($where);
     $result = $this->db->get()->result();

    if($result && $result[0]->status_verifikasi =='belum')
    {
       $this->db->set('status_verifikasi','sudah');
    } else{
       $this->db->set('status_verifikasi','belum');
    }

    $this->db->where($where);
    $this->db->update($tb_peserta);
}

关于php - 使用 Codeigniter 更新数据库表中的字段状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44584626/

相关文章:

mysql - 到 BLOB 还是不到 BLOB

php - 如何使用 PHP 从 MySQL 获取记录到值对象

ios - 删除特定对象 Realm Swift

java - 在 JHipster 中禁用 ehcache 的最佳方法是什么

javascript - PHP 内 JS 内 Html 循环

php - 在字符串中查找php字符串并保存为变量

php - 使用 PHP 在网站上切换语言

javascript - 为什么我的 php echo 不起作用?

Mysql2::错误:表.schema_migrations'不存在

mysql - 如何在 Google App Engine 中执行 OR 查询