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

[已解决] 新建文章时指定分类/article/add/1在form_validation失败时出错

[复制链接]
发表于 2010-9-14 11:37:28 | 显示全部楼层 |阅读模式
新建文章时指定分类/article/add/1在form_validation失败时成/article/add,这样页面出错了。
这个咋处理啊,请高手帮忙。

PHP复制代码
 
function add($categoryId) {
        $this->form_validation->set_rules('name', '名称', 'trim|required|min_length[2]|xss_clean');
        if ($this->form_validation->run() ) {
             $this->data['category'] = $this->CategoryModel->getById($categoryId);
              ..
        }
}
 
复制代码
发表于 2010-9-14 11:55:08 | 显示全部楼层
你要做什么,没看懂
 楼主| 发表于 2010-9-14 12:21:08 | 显示全部楼层
新建文章时指定分类/article/add/2,这样表单里就会默认指定该文章所属的分类2(分类1,分类2,分类3)。

但验证失败时,比如name小于2位时,url变成/article/add了,丢失了后面的参数,这样默认指定该文章所属分类的代码由于没参数,所以出错了。。。
发表于 2010-9-14 13:15:33 | 显示全部楼层
URL 不会自己变,肯定是你设置的。
发表于 2010-9-14 13:38:43 | 显示全部楼层
你把你的代码传上来,我才能试试啊。

我可以肯定的告诉你,URL 是可以随意设置的,不会出现 CI 帮你设置 URL 的情况。
 楼主| 发表于 2010-9-14 13:38:46 | 显示全部楼层
查出来了,页面上加上 :
PHP复制代码
 
<form method=post action="/article/add/<?php echo $category['id']; ?>">  
 
复制代码


这样就好了。。。
发表于 2010-9-14 18:00:04 | 显示全部楼层
本帖最后由 kis 于 2010-9-14 18:02 编辑

...
但还是建议你将控制器的方法参数默认设置为null(防止少传递参数报错)

本版积分规则