Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在yii2中创建一个简单的html表单?_Html_Yii2 - Fatal编程技术网

如何在yii2中创建一个简单的html表单?

如何在yii2中创建一个简单的html表单?,html,yii2,Html,Yii2,我试过了 <form id='blah' action='myActionController' method='post'> //fields here <input type='submit' name='submit' value='button name' /> </form> 我只是不想使用活动窗体。。。 那么,如何在不使用内置yii的情况下在普通html版本中创建表单呢 活动表单?在yii2中,如果您想要myActionController的链接

我试过了

<form id='blah' action='myActionController' method='post'>
//fields here
<input type='submit' name='submit' value='button name' />
</form>
我只是不想使用活动窗体。。。 那么,如何在不使用内置yii的情况下在普通html版本中创建表单呢
活动表单?

在yii2中,如果您想要myActionController的链接,则应使用此符号 (假设您有一个名为
site
的控制器和一个名为
myActionController
的操作)


//这里的田地

可能是您需要正确的url,对于这一点,UrlHelper可能很有用

这边

use yii\helpers\Url;
.....

echo "<form id='blah' action='" . Url::to(['/site/my-action-controller']) . 
              "' method='post'>";
使用yii\helpers\Url;
.....
回声“;

在yii2中,如果您想要myActionController的链接,则应使用此符号 (假设您有一个名为
site
的控制器和一个名为
myActionController
的操作)


//这里的田地

可能是您需要正确的url,对于这一点,UrlHelper可能很有用

这边

use yii\helpers\Url;
.....

echo "<form id='blah' action='" . Url::to(['/site/my-action-controller']) . 
              "' method='post'>";
使用yii\helpers\Url;
.....
回声“;

您需要添加CSRF数据,以便对提交内容进行验证

最简单的方法是使用静态方法
\yii\web\Html::beginForm()
,它将为您实现这一点(并注意生成正确的表单标记)

生成表单的代码如下所示:

<?= \yii\web\Html::beginForm('myActionController') ?>
<input type='submit' name='submit' value='button name'>
<?= \yii\web\Html::endForm() ?>


当然,您可以关闭CSRF验证,但不建议这样做。如果没有此验证,您的普通表单将起作用。

您需要添加CSRF数据以验证您的提交

最简单的方法是使用静态方法
\yii\web\Html::beginForm()
,它将为您实现这一点(并注意生成正确的表单标记)

生成表单的代码如下所示:

<?= \yii\web\Html::beginForm('myActionController') ?>
<input type='submit' name='submit' value='button name'>
<?= \yii\web\Html::endForm() ?>


当然,您可以关闭CSRF验证,但不建议这样做。如果没有此验证,您的普通表单将正常工作。

最好的方法是克隆已在使用sendEmail功能的现有ContactForm模型,并添加您自己的属性、规则和属性。在sendEmail函数中,您可以将希望在->setTextBody中接收的所有必要字段作为字符串包含,并使用如下连接:

 public function sendEmail($email)
{
    return Yii::$app->mailer->compose()
        ->setTo($email)
        ->setFrom([$this->email => $this->name])
        ->setSubject($this->subject)
        ->setTextBody($this->name. ' ' .'has requested'. 'space here'. $this->customfield. ' etc.')
        ->send();
        }
自定义contactForm模型后,您可以复制站点控制器上的actionContact,并将其作为actionIndex或任何内容添加到表单控制器中,还可以复制公共函数actions()上的验证码和错误

现在我们将用yii2创建一个简单的html表单,如下所示:

在我的示例中,我使用registerForm作为我的模型(注意我如何在yii2的id和name字段中使用该模型来发送表单而不会出现问题)


选择机构的类型*
中学
高中
学院
大学

最好的方法是克隆已经在使用sendEmail功能的现有ContactForm模型,并添加您自己的属性、规则和属性。在sendEmail函数中,您可以将希望在->setTextBody中接收的所有必要字段作为字符串包含,并使用如下连接:

 public function sendEmail($email)
{
    return Yii::$app->mailer->compose()
        ->setTo($email)
        ->setFrom([$this->email => $this->name])
        ->setSubject($this->subject)
        ->setTextBody($this->name. ' ' .'has requested'. 'space here'. $this->customfield. ' etc.')
        ->send();
        }
自定义contactForm模型后,您可以复制站点控制器上的actionContact,并将其作为actionIndex或任何内容添加到表单控制器中,还可以复制公共函数actions()上的验证码和错误

现在我们将用yii2创建一个简单的html表单,如下所示:

在我的示例中,我使用registerForm作为我的模型(注意我如何在yii2的id和name字段中使用该模型来发送表单而不会出现问题)


选择机构的类型*
中学
高中
学院
大学

是的,我是通过谷歌搜索找到的,所以我加了这个。是的,我是通过谷歌搜索找到的,所以我加了这个
    <?php

    namespace register\models;

    use Yii;
    use yii\base\Model;

    class RegisterForm extends Model
    {
    public $name;
    public $institution;
    public $number;
    public $pname;
    public $email;
    public $verifyCode;