我有这个问题,在我提交表单后,我执行了“F5”或“刷新” 仍然有数据提交,每次按“F5”相同的数据我第一次提交表单,然后它变成了重复条目,我试着清除POST数据以及CI中的field_data,仍然有值被提交,我不知道为什么它不能被困在form_validation
,我设置了一个必需的规则。现在在Codeigniter中提交表单
$this->load->library('form_validation');
$this->form_validation->set_rules('name', 'Name', 'required');
$this->form_validation->set_rules('email', 'Email', 'required|valid_email');
$this->form_validation->set_rules('comment','Comment','required');
if(/*form validation is false*/) //fail
{
// some code for incorrect values
}
else //success
{
$_POST = array();
$this->form_validation->clear_field_data();
//and some code for views
}
,在一个正常的过程,它有没有错误,但在成功的时候,我按下“F5”或刷新页面,得到的数据又如此再确实提交其插入到数据库, 我不知道为什么,这一点从现场数据与实际岗位的数据已经清除一切,如果您有任何知识,请你分享
BTW只是一个平视,我form_validation
是做一个自定义,扩展了CI的本地form_validation
它可能是浏览器缓存吗? –
hmmm也许,但我不知道如何查看缓存..不能通过CI分析器查看它?任何想法如何查看或更好地清除它?在CI – lemoncodes
您可以从浏览器中清除浏览器缓存。如果暂时解决了这个问题,这意味着浏览器确实会缓存表单提交,并且您需要设置正确的HTTP标头来阻止它。 –