如何在Yii上创建新的表单模型?

时间:2013-10-29 16:03:45

标签: php yii yii-cformmodel

我只是一个愚蠢的开始yii和整个mvc的事情。 我想知道是否可以创建一个表单,只会向我发送一封包含所有字段的电子邮件。没有数据库存储,没有主要规则。

使用像登录和联系表单这样的预制模型我从未遇到过任何问题。那些工作正常。所以现在我正在尝试一个测试表单,看看我是否可以创建一个工作模型,但它似乎不起作用。

查看:

<form name="testform" id="testform" action="/default/apply" method="POST">
<input type="text" value="" id="test1" name="test1" />
<input type="submit" name="test_sbm" id="test_sbm" value="submit"/>
</form>

型号:

<?php


class ApplicationForm extends CFormModel {

public $test1;


public function rules() {
    return array(
        array('test1', 'required'),

    );
}

}

默认控制器:

public function actionApply() {
    $this->layout = "home";
    $this->pageTitle = "Apply Now";

    $applymodel = new ApplicationForm;


    if(isset($_POST['testform'])){
         $applymodel->attributes=$_POST['testform'];
         $to = 'myemail@myserver.com';
            $subject = 'Test Form';
            $message = $applymodel->test1;
            $headers = 'From: test@test.com' . " " .
                    'Reply-To: tesy@test.com' . " " .
                    'X-Mailer: PHP/' . phpversion();
            mail($to, $subject, $message, $headers);
    }

   $this->render('apply', array('model' => $applymodel));
}

我可能缺少大量的东西,但我一直在研究,找不到我的方式来获取表单信息。 如果有人能告诉我正确的方向,我将不胜感激。

我只想获取表单值并立即通过电子邮件发送。 感谢

1 个答案:

答案 0 :(得分:0)

更改输入元素
<input type="text" value="" id="test1" name="test1" />

<input type="text" value="" id="test1" name="testform[test1]" />