J'essaie de placer des données dans du texte caché en yii, mais je ne sais pas comment. J'ai besoin d'un code similaire à une syntaxe php régulière:
<input type="hidden" name="field_name" value="a"/>
Il est censé être un champ avec une valeur statique de a. J'en ai juste besoin pour aller avec mes variables $ _POST pour la vérification des erreurs.
Est-il possible d'éviter de modifier les modèles et les contrôleurs juste pour mettre le champ dedans? Je ne peux pas utiliser gii parce que je n'ai que des extraits de code avec moi.Désolé ainsi que j'ai peu de compréhension de yii donc je n'ai aucune idée si ce que je dis sur les 2 dernières phrases est correct.
en vues
champ caché avec modèle et forme:
<?php echo $form->hiddenField($model, 'name'); ?>
ou sans modèle
<?php echo CHtml::hiddenField('name' , 'value', array('id' => 'hiddenInput')); ?>
Dans Yii2, cela a également changé:
<?= Html::activeHiddenInput($model, 'name') ;?>
Les références:
Yii entrée cachée:
<?php echo $form->hiddenField($model,'fieldName',array('value'=>'foo bar')); ?>
si données de la base de données et champ valeur ou taille:
echo $form->hiddenField($experience,'job_title',array('size'=>'50','value'=>$experience_data['job_title'])); ?>
pour yii2 vous pouvez essayer ceci
<?= $form->field($model, 'user_type',['inputOptions' => ['value' => '2']])->hiddenInput()->label(false) ?>
Ça a marché pour moi
Yii 1
<?php echo $form->hiddenField($model, 'name'); ?>
Yii2
<?= Html::activeHiddenInput($model, 'attribute', ['value' => 'Some Value']) ?>
En outre, il convient de noter pour Yii2, le paramètre de tableau fonctionne différemment d'un champ de formulaire normal. PAR EXEMPLE. Une entrée normale ressemblerait davantage à ceci.
<?= $form->field($model, 'attribute', ['inputOptions' => ['placeholder' => 'Some Placeholder', 'value' => 'Some Input Value']]) ?>
J'espère que cela t'aides.
Alternativement,
echo CHtml::activeHiddenField($model,"[$i]id", array("value" => $model->id));
Cela définirait la valeur du champ caché comme l'id du modèle. Le [$ i] est utile pour la mise à jour de plusieurs enregistrements.
Voici deux façons de le faire ...
sans modèle
echo CHtml::hiddenField('name' , 'value', array('id' => 'name'));
avec modèle
echo $form->hiddenField($model, 'name');