这很简单,我想,但我是新的codeigniter,所以请帮助。我有一个表单页面,需要数据,并在提交时存储在数据库中的数据。然后我尝试了两种方法重定向回主页:
first: $this->load->view('home');
second: redirect('/login/form/', 'refresh');
他们成功地重定向或加载主页,但url仍然是/property/new_property,这是数据输入的视图。另外,当我点击刷新主页与url如上所述,数据被重新提交,所以数据库中的多个记录。我如何重定向到主页,并使url属性/主页?
谢谢
4条答案
按热度按时间nfg76nw01#
$this->session->set_flashdata('message', 'New Post has been added');
redirect('somefunction', 'refresh')
set_flashdata保存成功后将帮助您销毁您提交的数据和重定向将改变您的网址。
kxkpmulp2#
$this->load->view()
将只加载视图,url不会更改。当您使用redirect()
时,它将重定向到其他页面,您的url将更改。对于您的解决方案,您可以在插入之前选择要插入到模型中的数据,如果它存在,则不运行插入查询,只需重定向到不同的页面。
jdg4fx2g3#
您需要url帮助程序才能使用
这是在CI. http://ellislab.com/codeigniter/user_guide/helpers/url_helper.html重定向的正确方法
要加载这个助手,你可以使用
$this->load->helper('url');
,或者把它写在你的autoload.php的config文件夹里(这样它会被加载到所有页面)。例如,这里是一个简单的提交页面在我的网站。
z9ju0rcb4#
我已经面临同样的问题与codeigniter 3.1.7,我只是简单地验证这提交按钮值与名称,例子如下
在可视侧
在控制器侧