数据插入CodeIgniter三次

时间:2011-11-29 11:30:35

标签: php codeigniter

$data = array(
    'date' => $time,
    'boxoffice'=> $boxoffice,
    'upcoming'=> $upcoming,
    'intheaters'=> $intheaters,
    'opening' => $opening,
    'user'  => $users,
    'movie' => $movies,
    'star'  => $actors,
    'diractor' => $directores,
    'writer'  => $writeres,
    'cast'  => $casts,
    'comment'=> $comment,
    'image' => $images,
    'genre' => $genre,
    'country'=> $countrycode
);

try {
    $this->db->insert('muvidb_updatehistory',$data);
}
catch (Exception $e){}

我的项目中有上面的代码,起初看起来工作正常但是当我查看我的表时,值插入了三次。我是codeigniter的新手,我遇到了这个问题。

任何人都知道为什么会这样?

2 个答案:

答案 0 :(得分:0)

您是否检查过是否有某种重写技巧或开发调试工具可以访问该URL 3次? (甚至是推荐人搜索机器人等等......)

这就是为什么你应该在插入数据之前验证它是一个POST请求。遵守HTTP规范的GET请求不应改变数据......

答案 1 :(得分:0)

您的双重提交检查可能很差。更多信息,请参阅我的答案:duplicate data insert in CodeIgniter

在这种情况下,最好的选择是查看数据是否已经存在,如果存在,则更新它而不是插入。我稍后会添加一个例子。