Php $\u POST在自定义URL中不起作用
我在应用程序中使用了自定义URL。当我创建消息时,它会将我重定向到创建表单,但当我提交表单时,它会再次重定向回同一表单。控制器中有一个条件,如果设置了$\u POST变量,则保存它,否则重定向到表单。我原以为$u POST变量没有设置,但当我以在那里打印的形式打印它时。那么,如果设置了$\u POST变量,那么为什么条件会失败呢?以下是我的自定义URL。在使用自定义URL之前,它工作正常Php $\u POST在自定义URL中不起作用,php,yii,Php,Yii,我在应用程序中使用了自定义URL。当我创建消息时,它会将我重定向到创建表单,但当我提交表单时,它会再次重定向回同一表单。控制器中有一个条件,如果设置了$\u POST变量,则保存它,否则重定向到表单。我原以为$u POST变量没有设置,但当我以在那里打印的形式打印它时。那么,如果设置了$\u POST变量,那么为什么条件会失败呢?以下是我的自定义URL。在使用自定义URL之前,它工作正常 'urlManager' => array( 'urlFormat
'urlManager' => array(
'urlFormat' => 'path',
'showScriptName' => false,
'rules' => array(
'' => 'questions/index',
'messages' => 'messages/index',
'tags' => 'tags/index',
'login' => 'site/login',
'signup' => 'users/create',
'<id:\w+>' => 'users/view',
'<controller:\w+>/<id:\d+>' => '<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'gii' => 'gii',
'gii/<controller:\w+>' => 'gii/<controller>',
'gii/<controller:\w+>/<action:\w+>' => 'gii/<controller>/<action>',
),
),
如果重定向未发生,则
$model->save()
未成功完成。您可以使用print\r($model->getErrors())
查看验证错误。控制器代码在哪里?自定义URL不应影响此行为,可能您在其他地方更改了一些代码。你能发布你的控制器操作代码吗?那么,一旦你提交,数据是否会保存到数据库中?一般来说,控制器上的重定向调用可能有问题,但未发布。我看不出你的配置文件或.htaccess文件有问题哦,我的错误。我找了两个小时的问题。在我的模型中,必填部分中有一些字段,我没有在表单中显示它们。所以,我把它们从模型中删除了,这很好。谢谢大家。
Options +FollowSymLinks
IndexIgnore */*
<IfModule mod_rewrite.c>
RewriteEngine on
# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# otherwise forward it to index.php
RewriteRule . index.php
</IfModule>
public function actionUpdate($id) {
$model = $this->loadModel($id);
if (isset($_POST['User'])) {
$model->attributes = $_POST['User'];
if ($model->save())
$this->redirect(array('view', 'id' => $model->id));
}
$this->render('update_info', array(
'model' => $model,
));
}