Здравствуйте. возникла проблема с тем что при полной проверке валидации вылетает ошибка что поля не заполнены. Пока он не проходит валидацию появляются подсказки как и должны быть. Когда все поля заполнены верно подсказки исчезают и данные не идут. распечатываю ошибки валидации говорит поля не заполнены. Как будто пост куда то пропадает, хотя внутри контроллера я могу распечатывать данные и он же чем то заполняет поля.
код контроллера.
public function actionValueCounter()
{
$vladelcy = new Vladelcy();
$dogovor = new Dogovor();
if ($vladelcy->load(Yii::$app->request->post()) and $dogovor->load(Yii::$app->request->post())); //при правильном заполнении код дальше не идет
{
$valid_dogovor = $dogovor->validate();
$valid_vladelcy = $vladelcy->validate();
if ($valid_vladelcy == TRUE && $valid_dogovor == TRUE) {
$info_chel = Vladelcy::find()
->joinWith('dogovor')
->where(['dogovor.dogovorid' => $dogovor->dogovorid, 'vladelcy.familiya' => $vladelcy->familiya])
->one();
if (empty($info_chel)) {
echo 'совпадений не найдено';
die();
} else {
$ulic = substr($info_chel->abonentid, 0, 4);
$ulica = Ulicy::findOne($ulic);
return $this->render('view_result_value', ['account' => $info_chel, 'ulica' => $ulica]);
}
}
}
return $this->render('valuecounter', ['vladelcy' => $vladelcy, 'dogovor' => $dogovor]);
}
код вида
<div class="x_content">
<br />
<?php $form = ActiveForm::begin([
'id' => 'demo-form2',
'action' => ['site/value-counter'],
'options' => [
'class' => 'form-horizontal form-label-left'],
]);?>
< <div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="first-name">Лицевой счет<span class="required"></span>
</label>
<div class="col-md-6 col-sm-6 col-xs-12">
<?=$form->field($dogovor, 'dogovorid', ['inputOptions' => ['class' => 'form-control col-md-7 col-xs-12']])->textInput()->input('text', ['placeholder' => "номер вашего договора"])->label(false); ?>
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="first-name">Фамилия владельца<span class="required"></span>
</label>
<div class="col-md-6 col-sm-6 col-xs-12">
<?=$form->field($vladelcy, 'familiya', ['inputOptions' => ['class' => 'form-control col-md-7 col-xs-12']])->textInput()->input('text', ['placeholder' => "Фамилия владельца"])->label(false); ?>
</div>
</div>
<div class="ln_solid"></div>
<div class="form-group">
<div class="col-md-6 col-sm-6 col-xs-12 col-md-offset-3">
<?= Html::submitButton('Выбрать', ['class' => 'btn btn-primary']) ?>
</div>
</div>
<?php $form = ActiveForm::end();?>
</div>
код моделей
public static function tableName()
{
return 'dogovor';
}
/**
* @inheritdoc
*/
public function rules()
{
return [
[['abonentid','dogovorid'], 'required'],
['dogovorid', 'integer'],
[['abonentid', 'dogovordata', 'telefon', 'kategoriya', 'socialid', 'datas', 'datapo', 'deystvuyushiy', 'dataizmeneniya'], 'string'],
];
}
public static function tableName()
{
return 'vladelcy';
}
/**
* @inheritdoc
*/
public function rules()
{
return [
[['dogovorid', 'familiya'], 'required'],
[['dogovorid', 'sobstvennostID', 'nomer'], 'integer'],
[['abonentid'], 'string', 'max' => 15],
[['familiya', 'imya', 'otchestvo'], 'string', 'max' => 200],
[['datas'], 'string', 'max' => 50],
[['dogovorid'], 'exist', 'skipOnError' => true, 'targetClass' => Dogovor::className(), 'targetAttribute' => ['dogovorid' => 'dogovorid']],
];
}
public function getDogovor()
{
return $this->hasOne(Dogovor::className(), ['dogovorid' => 'dogovorid']);
}