Concrete5验证不在单个页面上工作

时间:2016-07-11 15:26:15

标签: concrete5

我正在尝试在单个页面上验证表单。以下是我尝试过但$validation->test()似乎无法正常工作的内容。它应该在验证first_name字段时重定向到另一个页面。我对这个网址感到困惑:http://localhost/mysite/index.php/buy/process/。我使用的是5.6.x.不确定我做错了什么。

public function process() {
    $validation = Loader::helper('validation/form');
    $validation->setData($this->post());
    $validation->addRequired($this->post('first_name'), 'First Name must not be empty');
    if ($validation->test()) {
        ....
        ....
        $this->redirect('/buy/step2');
    } else {
        $errorArray = $validation->getError()->getList();
        $this->set('errorArray', $errorArray);
    }
}

从视图中调用此函数:

<form enctype="multipart/form-data" id="buy" class="buy-form" method="post" action="<?php echo $this->action('process')?>">.....</form>

1 个答案:

答案 0 :(得分:0)

我不得不替换

$validation->addRequired($this->post('first_name'), 'First Name must not be empty');

$validation->addRequired('first_name', 'First Name must not be empty');

这样做了。