用户
 找回密码
 入住 CI 中国社区
搜索
查看: 14425|回复: 4
收起左侧

[HELP] CI下,点按钮提交form时action的路径怎么写?

[复制链接]
发表于 2012-10-9 19:07:41 | 显示全部楼层 |阅读模式
之前没用CI框架,单独的form action写的是action="kidsland/..../welcome.php"
现在移植到CI框架下不好使。考虑到在地址栏输入访问php时,CI依照MVC设计模式,由控制器转发页面,所以网址地址格式都是localhost/CI/controller_name/controller_method/。问题是,form里的action,点击按钮申请某个页面时,也要写这种格式吗?就是说action里写的访问的php不是传统的页面Php,而是一个controller php,提交form先提交到这个controller php上,然后这个controller php里写$this->load->view("页面.php"),是这样吗?我怎么怎么写这个form提交都不好使。
PS:类似的问题还存在于AJAX请求,在CI框架下该怎么写AJAX请求的服务器URL地址。
望高手指教。

发表于 2012-10-9 21:22:01 | 显示全部楼层
刚开始接触这些严格执行MVC分层的框架我也有类似的迷惑,表单该提交到哪里?

你只需知道/index.php/welcome/index是执行welcome控制器的index方法,接下来就很好办了。

表单提交到/index.php/welcome/from,这样,就可以在welcome控制器中的from方法中对提交过来的表单数据进行处理了。

AJAX提交也差不多。

点评

对,提交到一个控制器,你的路径就是控制器名字,再由这个控制器进行处理  发表于 2012-10-18 12:18
发表于 2012-10-9 20:05:47 | 显示全部楼层
明白你说的什么意思,能贴一段代码出来吗?
发表于 2012-10-10 16:14:43 | 显示全部楼层
PHP复制代码
 
<form action="<?php echo site_url('welcome/index'); ?>" method="post">
</form>
 
复制代码
 楼主| 发表于 2012-10-10 18:11:59 | 显示全部楼层
Shengzhi 发表于 2012-10-9 21:22
刚开始接触这些严格执行MVC分层的框架我也有类似的迷惑,表单该提交到哪里?

你只需知道/index.php/welcom ...

解决了,和你说的一样。其实开始我也试过了,当时没成功是因为我在路径里少了index.php。当时我还没改配置文件将Index.php去掉,默认必须加上。form和ajax就是这个思路了

本版积分规则