虾子酱油 发表于 2011-8-22 17:37:16

控制器一个方法里多个视图使用表单验证如何实现?

因手册里的例子是很简单的,如下,验证结束只需要$this->load->view( )就可以了。
<?php

class Form extends CI_Controller {

function index()
{
$this->load->helper(array('form', 'url'));

$this->load->library('form_validation');
   
if ($this->form_validation->run() == FALSE)
{
   $this->load->view('myform');
}
else
{
   $this->load->view('formsuccess');
}
}
}
?>

但实际上我需要跳转到一个方法里,这个方法里有n个视图,而不仅仅和上面例子里一样只有一个视图,如下:
function card()
{   
    $this->load->view('header');
   
    $this->load->library('form_validation');

    $this->load->view('card_entry');   
      
    $this->load->view('footer');
}
我该如何做呢?上面只是一个简单的例子,我觉得我不应该把card方法里的语句全部copy到index方法里吧?

zhouli520 发表于 2011-8-22 17:38:22

if ($this->form_validation->run() == FALSE)
{
$this->card();
}

虾子酱油 发表于 2011-8-22 17:40:51

谢谢楼上的!!我也这么试了,但是因好像表单的数据没有传递过去,所以我不知道对不对。
请问这样数据应该会传递过去么?

zhouli520 发表于 2011-8-22 17:44:11

虾子酱油 发表于 2011-8-22 17:40 static/image/common/back.gif
谢谢楼上的!!我也这么试了,但是因好像表单的数据没有传递过去,所以我不知道对不对。
请问这样数据应该 ...

你测试下就可以了,header和footer我一般是在试图的头尾引入的,很少在控制器里引入,所以我控制器一般就是直接load一个视图,不过应该是可以的.

虾子酱油 发表于 2011-8-22 17:48:07

zhouli520 发表于 2011-8-22 17:44 static/image/common/back.gif
你测试下就可以了,header和footer我一般是在试图的头尾引入的,很少在控制器里引入,所以我控制器一般就是 ...

OK!非常感谢!我研究一下,:handshake

虾子酱油 发表于 2011-8-22 20:35:40

本帖最后由 虾子酱油 于 2011-8-22 20:36 编辑

问题解决!把view在控制器里简化为一个,就好办了。
页: [1]
查看完整版本: 控制器一个方法里多个视图使用表单验证如何实现?