Maison >développement back-end >tutoriel php >Explication détaillée de l'utilisation des widgets de formulaire Yii2

Explication détaillée de l'utilisation des widgets de formulaire Yii2

*文
*文original
2018-01-03 13:29:121579parcourir

Cet article vous présente principalement l'utilisation des widgets de formulaire dans Yii 2.0. L'introduction dans l'article est très détaillée et a une certaine valeur d'apprentissage de référence pour les études ou le travail de chacun. Les amis qui en ont besoin peuvent y jeter un œil ci-dessous. J'espère que cela aide tout le monde.

Avant-propos

Cet article présente principalement le contenu pertinent sur l'utilisation des widgets de formulaire dans yii 2.0. Il est partagé pour référence et étude par chacun. . Ci-dessous, jetons un coup d'œil à l'introduction détaillée :

Méthode d'utilisation

Créez d'abord le calque de modèle Parce que vous souhaitez utiliser des widgets de formulaire. , vous devez charger les composants correspondants. , les composants nécessaires ici sont yiiwidgetsActiveForm yiihelpersHtml

Ensuite, écrivez la méthode dans la classe définie par le modèle. Tout d'abord, nous devons définir la valeur de nom dont nous avons besoin. pour utiliser le widget de formulaire

Non Parlons plus du code

<?php
namespace frontend\models;
use yii\base\Model;
use yii\widgets\ActiveForm;
use yii\helpers\Html;

class Form extends Model
{
    public $name;
    public $pwd;
    public $sex;
    public $hobby;
    public $age;
    public function rules(){
        return[
        
        ];
    }
    public function attributeLabels(){
        return[
        ‘name&#39;=>&#39;用户名&#39;,
        ‘pwd&#39;=>&#39;密码&#39;,
        ‘sex&#39;=>&#39;性别&#39;,
        ‘hobby&#39;=>&#39;爱好&#39;,
        ‘age&#39;=>&#39;年龄&#39;
        ];
    }
    static public function dataarr($data){
        $arr = array();
        foreach($data as $key=>$value){
        $arr[$value[‘kid&#39;]] = $value[‘kname&#39;];
        }
        return $arr;
    }
}

Dans ce modèle, il existe une méthode pour convertir les en-têtes anglais en attributuLabels chinois

Nous traitons également de la sélection unique, de la sélection multiple et de la liste déroulante. La valeur de la boîte est dataarr

Ensuite, nous devons créer le contrôleur

<?php

namespace frontend\controllers;
use yii\web\Controller;
use yii;
use db;
use frontend\models\Form;
class LoginController extends Controller
{
public function actionIndex(){
$sql = ‘select kid,kname from exam_tiku&#39;;
$data = yii::$app->db->createCommand($sql)->queryAll();
$arr = Form::dataarr($data);
//var_dump($arr);die;
$model = new Form();
return $this->render(‘index&#39;,[‘model&#39;=>$model,&#39;data&#39;=>$arr]);
}
public function actionAdd(){
$data = Yii::$app->request->post();
echo $name = $data[‘Form&#39;][‘name&#39;];
}
}

puis l'afficher dans la couche de vue de ma porte

<?php
/**
* Created by PhpStorm.
* User: jinlei
* Date: 2017/5/10
* Time: 9:41
*/

use yii\helpers\Html;
use yii\widgets\ActiveForm;

$form = ActiveForm::begin([
‘id&#39; => ‘login-form&#39;,
‘options&#39; => [‘class&#39; => ‘form-horizontal&#39;],
‘action&#39;=>&#39;?r=login/add&#39;,
‘method&#39;=>&#39;post&#39;,
]) ?>
<?= $form->field($model, ‘name&#39;) ?>
<?= $form->field($model, ‘pwd&#39;)->passwordInput() ?>
<?= $form->field($model, ‘sex&#39;)->radioList([‘0&#39;=>&#39;男&#39;,&#39;1&#39;=>&#39;女&#39;]) ?>
<?= $form->field($model, ‘hobby&#39;)->checkboxList([‘basketball&#39;=>&#39;篮球&#39;,&#39;baseball&#39;=>&#39;棒球&#39;,&#39;swim&#39;=>&#39;游泳&#39;]) ?>
<?= $form->field($model, ‘age&#39;)->dropDownList($data) ?>

<p class=”form-group”>
<p class=”col-lg-offset-1 col-lg-11″>
<?= Html::submitButton(‘Login&#39;, [‘class&#39; => ‘btn btn-primary&#39;]) ?>
</p>
</p>
<?php ActiveForm::end() ?>

Dans cette page, nous montrons la zone de texte de la zone de mot de passe à sélection unique multi -sélectionnez la zone déroulante où les données de la zone déroulante sont lues à partir de la base de données

Recommandations associées :

Yii2 implémente l'interconnexion QQ connexion

Analyse simple Yii2 à l'aide du cache

Yii2 implémente le contrôle des autorisations rbac

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn