我为客户端创建了一个 Yii 应用程序,它在本地和在测试期间使用的服务器上都运行良好,没有问题。客户端已将应用程序移动到他们的服务器,这是它将被托管的地方,当输入一个表单上的一个变量(只有这个表单和一个登录表单)时,php 不会记录 $_POST。该字段是可选字段。
有没有人知道是什么导致了这种情况发生?
表单视图如下
<div class="form">
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'clothing-knowledge-hub-form',
'htmlOptions' => array('enctype' => 'multipart/form-data'),
'enableAjaxValidation'=>false,
)); ?>
<p class="note">Fields with <span class="required">*</span> are required.</p>
<?php echo $form->errorSummary($model); ?>
<div class="row">
<?php echo $form->labelEx($model,'headerText'); ?>
<?php echo $form->textField($model,'headerText',array('size'=>60,'maxlength'=>255)); ?>
<?php echo $form->error($model,'headerText'); ?><br/><br/>
</div>
<div class="row">
<br/>
<?php echo $form->labelEx($model,'videoPath'); ?>
Only enter a valid video embed path here. <br/>(This will overide the detail page image - image541x491 for this page)<br/>
<?php echo $form->textField($model,'videoPath',array('size'=>60,'maxlength'=>255)); ?>
<?php echo $form->error($model,'videoPath'); ?><br/><br/>
</div>
<div class="row">
<?php echo $form->labelEx($model,'bodyText'); ?>
<?php echo $form->textArea($model,'bodyText',array('rows'=>6, 'cols'=>50)); ?>
<?php echo $form->error($model,'bodyText'); ?><br/>
</div>
<div class="row">
<br/>
<?php echo $form->labelEx($model,'findOutMore'); ?>
This will enable the 'Find Out More' button on the detail page.<br/> To enable it, please enter a valid url <?php //(include http:// or https://)?>
<?php echo $form->textField($model,'findOutMore',array('size'=>60,'maxlength'=>510)); ?>
<?php echo $form->error($model,'findOutMore'); ?>
<br/><br/>
</div>
<div class="row">
<?php echo $form->labelEx($model,'referencesText'); ?>
<?php echo $form->textArea($model,'referencesText',array('rows'=>4, 'cols'=>100)); ?>
<?php echo $form->error($model,'referencesText'); ?>
</div>
<div class="row">
<br/>
<?php echo $form->labelEx($model,'image300x226'); ?>Please ensure all images are optimised, (max file size 1mb) and are either jpg, jpeg, pngs or gif.<br/>
<?php echo $form->fileField($model,'image300x226',array('size'=>60,'maxlength'=>510)); ?><br/>
<?php echo $form->error($model,'image300x226'); ?>
<?php echo 'Existing image file name: '.$model['image300x226'];?><br/>
<img src="<?php echo Yii::app()->request->baseUrl; ?>/images/<?php echo $model['image300x226'];?>"><br/><br/>
</div>
<div class="row">
<br/>
<?php echo $form->labelEx($model,'image300x473');?>Please ensure all images are optimised, (max file size 1mb) and are either jpg, jpeg, pngs or gif.<br/>
<?php echo $form->fileField($model,'image300x473',array('size'=>60,'maxlength'=>510)); ?><br/>
<?php echo $form->error($model,'image300x473'); ?>
<?php echo 'Existing image file name: '.$model['image300x473'];?><br/>
<img src="<?php echo Yii::app()->request->baseUrl; ?>/images/<?php echo $model['image300x473'];?>"><br/><br/>
</div>
<div class="row">
<br/>
<?php echo $form->labelEx($model,'image541x491').' Detail Page Image'; ?><br/>Please ensure all images are optimised, (max file size 1mb) and are either jpg, jpeg, pngs or gif.
<?php echo $form->fileField($model,'image541x491',array('size'=>60,'maxlength'=>510)); ?><br/>
<?php echo $form->error($model,'image541x491'); ?>
<?php echo 'Existing image file name: '.$model['image541x491'];?><br/>
<img src="<?php echo Yii::app()->request->baseUrl; ?>/images/<?php echo $model['image541x491'];?>"><br/><br/>
</div>
<div class="row">
<br/>
<?php echo $form->labelEx($model,'imageCredit'); ?>
Html hyper links must include http:// or will result in a broken link<br/>
<?php echo $form->textArea($model,'imageCredit',array('rows'=>6, 'cols'=>50)); ?>
<?php echo $form->error($model,'imageCredit'); ?><br/>
</div>
<div class="row buttons">
<?php echo CHtml::submitButton($model->isNewRecord ? 'Create' : 'Save'); ?>
</div>
<?php $this->endWidget(); ?>
</div><!-- form -->
控制器动作如下
public function actionUpdate($id)
{
$model=$this->loadModel($id);
// Uncomment the following line if AJAX validation is needed
// $this->performAjaxValidation($model);
echo Yii::trace(CVarDumper::dumpAsString($_POST), 'vardump');
if(isset($_POST['ClothingKnowledgeHub']))
{
$model->setAttributes($_POST['ClothingKnowledgeHub']);
$file1 = CUploadedFile::getInstance($model, 'image300x226');
if($file1 != null){
$uniqueId = uniqid();
//$extra = Yii::app()->fileName->fileName();
$model->image300x226 = $uniqueId.'-'.$file1->name;
}
$file2 = CUploadedFile::getInstance($model, 'image300x473');
if($file2 != null){
$uniqueId = uniqid();
$model->image300x473 = $uniqueId.'-'.$file2->name;
}
$file3 = CUploadedFile::getInstance($model, 'image541x491');
if($file3 != null){
$uniqueId = uniqid();
$model->image541x491 = $uniqueId.'-'.$file3->name;
}
if(strpos($model->findOutMore, 'http') === false){
$model->findOutMore = 'http://'.$model->findOutMore;
}
if($model->save()){
if($file1 != null){
$file1->saveAs(dirname(__FILE__)."/../../images/".$model->image300x226);
}
if($file2 != null){
$file2->saveAs(dirname(__FILE__)."/../../images/".$model->image300x473);
}
if($file3 != null){
$file3->saveAs(dirname(__FILE__)."/../../images/".$model->image541x491);
}
echo Yii::trace(CVarDumper::dumpAsString($_POST['ClothingKnowledgeHub']), 'var_dump');
$this->redirect(array('view','id'=>$model->id));
}
else {
?><script type="text/javascript"> window.alert("There has been a problem saving your changes, please try again.")</script>
<?php
}
}
$this->render('update',array(
'model'=>$model,
));
}
谢谢您的帮助