我想使用活动记录更新我的数据库,但我在$ data数组中设置的计数器变量也在更新,因此,我不断收到MySQL错误#1054
错误备注
Error Number: 1054
Unknown column 'success' in 'field list'
UPDATE `posts` SET `success` = 0 WHERE `postID` = '1'
模型
public function editpost($postID)
{
$data['success'] = 0;
if($_POST){
$data_post = array(
'title' => $_POST['title'],
'post' => $_POST['post'],
'active' => 1
);
$this->post->update_post($postID, $data);
$data['success'] = 1;
};
$data['post'] = $this->post->get_post($postID);
$this->load->view('edit_post', $data);
}
控制器
public function update_post($postID, $data)
{
$this->db->where('postID', $postID);
$this->db->update('posts', $data);
}
查看
<?php if($success == 1){ ?>
<div style="color: white; background: green;">This post has been updated!</div>
<?php } ?>
<form action="<?=base_url()?>posts/editpost/<?= $post['postID']?>" method="post">
<p>Title: <input type="text" name="title" value="<?= $post['title']?>"></p>
<p>Description: <br><textarea name="post"><?= $post['post']?></textarea></p>
<p><input type="submit" value="Edit Post"></p>
</form>
这是我的数据库表:
答案 0 :(得分:0)
$this->post->update_post($postID, $data);
使用这个
$this->post->update_post($postID, $data_post);
因为您传递的数组是错误的数组
答案 1 :(得分:0)
执行查询时,它将返回true和false值。如果查询成功执行,则返回true,否则返回false。 例如:
$res = $this->db->where('id',$id)
->update('user',$array);
echo $res;