表格不是 POST ing
Form not POST ing
这是我的视图,其中有一个包含字段和提交按钮的表单。
<form id="typeheadForm" method="post" class="form-horizontal">
<div class="form-group">
<label class="col-xs-3 control-label">Movie</label>
<div class="col-xs-3">
<input type="text" class="form-control" name="state" id="movie_name" />
</div>
</div>
<input type='submit' name='submit' value='Search' class="btn btn-squared btn-default">
</form>
下面是我的控制器代码
public function actionMovies_all()
{
$this->layout = "main";
if ( isset( $_POST[ 'movie_name' ] ) )
{
print_r("success");die();
}
if ( Yii::$app->request->post() )
{
print_r(Yii::$app->request->post());die();
}
}
我无法POST表格。我究竟做错了什么?
我收到错误消息“错误请求 (#400)
无法验证您的数据提交。"
试试这个:
public function actionMovies_all()
{
$this->layout = 'main';
if ( isset( $_POST[ 'submit' ] ) )
{
print_r('success');die();
}
if ( Yii::$app->request->post() )
{
print_r(Yii::$app->request->post());die();
}
}
将<form id="typeheadForm" method="post" class="form-horizontal">
替换为
<?= \yii\helpers\Html::beginForm('', 'post', ['id' => 'typeheadForm', 'class' => 'form-horizontal']);?>
您得到 bad request
是因为当您手动创建表单时,您没有在其中包含 csrf 令牌。当您使用 Html::beginForm
方法创建表单时,它会在内部处理它。
这是我的视图,其中有一个包含字段和提交按钮的表单。
<form id="typeheadForm" method="post" class="form-horizontal">
<div class="form-group">
<label class="col-xs-3 control-label">Movie</label>
<div class="col-xs-3">
<input type="text" class="form-control" name="state" id="movie_name" />
</div>
</div>
<input type='submit' name='submit' value='Search' class="btn btn-squared btn-default">
</form>
下面是我的控制器代码
public function actionMovies_all()
{
$this->layout = "main";
if ( isset( $_POST[ 'movie_name' ] ) )
{
print_r("success");die();
}
if ( Yii::$app->request->post() )
{
print_r(Yii::$app->request->post());die();
}
}
我无法POST表格。我究竟做错了什么? 我收到错误消息“错误请求 (#400) 无法验证您的数据提交。"
试试这个:
public function actionMovies_all()
{
$this->layout = 'main';
if ( isset( $_POST[ 'submit' ] ) )
{
print_r('success');die();
}
if ( Yii::$app->request->post() )
{
print_r(Yii::$app->request->post());die();
}
}
将<form id="typeheadForm" method="post" class="form-horizontal">
替换为
<?= \yii\helpers\Html::beginForm('', 'post', ['id' => 'typeheadForm', 'class' => 'form-horizontal']);?>
您得到 bad request
是因为当您手动创建表单时,您没有在其中包含 csrf 令牌。当您使用 Html::beginForm
方法创建表单时,它会在内部处理它。