Langkah untuk melaksanakan penyerahan dan pemprosesan borang menggunakan rangka kerja Yii
Pengenalan:
Dalam pembangunan web, borang ialah cara interaksi pengguna yang sangat biasa. Cara melaksanakan penyerahan dan pemprosesan borang adalah pengetahuan asas yang mesti difahami oleh setiap pembangun. Artikel ini akan menggunakan rangka kerja Yii sebagai contoh untuk menerangkan secara terperinci cara menggunakan rangka kerja untuk melaksanakan langkah penyerahan dan pemprosesan borang.
views
. Cipta fail bernama form.php
dalam direktori ini dan tambahkan kod berikut: views
目录下。在该目录下创建一个名为form.php
的文件,并添加如下代码:<?php use yiiwidgetsActiveForm; use yiihelpersHtml; ?> <?php $form = ActiveForm::begin(); ?> <?= $form->field($model, 'name')->textInput(['maxlength' => true]) ?> <?= $form->field($model, 'email')->textInput(['maxlength' => true]) ?> <div class="form-group"> <?= Html::submitButton('提交', ['class' => 'btn btn-primary']) ?> </div> <?php ActiveForm::end(); ?>
上述代码中,我们使用了Yii提供的ActiveForm
组件来生成表单,使用了textInput
方法生成文本输入框。$model
代表表单模型,可以是一个自定义的Yii模型类。
controllers
目录下创建一个名为FormController.php
的文件,并添加如下代码:<?php namespace appcontrollers; use Yii; use appmodelsFormModel; use yiiwebController; class FormController extends Controller { public function actionIndex() { $model = new FormModel(); if ($model->load(Yii::$app->request->post()) && $model->validate()) { // 表单提交后的处理逻辑 // ... return $this->render('success'); } return $this->render('form', [ 'model' => $model, ]); } public function actionSuccess() { return $this->render('success'); } }
上述代码中,我们创建了一个名为FormController
的控制器,并在其中定义了两个动作方法actionIndex
和actionSuccess
。actionIndex
方法用于处理表单提交,actionSuccess
方法用于显示提交成功的页面。
models
目录下创建一个名为FormModel.php
的文件,并添加如下代码:<?php namespace appmodels; use yiiaseModel; class FormModel extends Model { public $name; public $email; public function rules() { return [ [['name', 'email'], 'required'], ['email', 'email'], ]; } }
上述代码中,我们创建了一个名为FormModel
的模型类,并在其中定义了name
和email
两个属性。在rules
方法中,我们定义了表单数据的验证规则。
config
目录下的web.php
文件中添加如下代码:'components' => [ // ... ], 'controllerMap' => [ 'form' => 'appcontrollersFormController', ],
上述代码中,我们在controllerMap
配置项中将form
关联到了appcontrollersFormController
控制器。
http://yourdomain.com/form
ActiveForm
yang disediakan oleh Yii untuk Menjana borang dan gunakan kaedah textInput
untuk menjana kotak input teks. $model
mewakili model borang, yang boleh menjadi kelas model Yii tersuai.
FormController.php
dalam direktori controllers
dan tambahkan kod berikut: 🎜🎜rrreee🎜Dalam kod di atas, kami mencipta fail bernama FormController dan dua kaedah tindakan <code>actionIndex
dan actionSuccess
ditakrifkan di dalamnya. Kaedah actionIndex
digunakan untuk memproses penyerahan borang dan kaedah actionSuccess
digunakan untuk memaparkan halaman dengan penyerahan yang berjaya. 🎜FormModel.php
dalam direktori models
dan tambahkan kod berikut: 🎜🎜rrreee🎜Dalam kod di atas, kami mencipta fail bernama Model kelas FormModel
, di mana dua atribut name
dan emel
ditakrifkan. Dalam kaedah rules
, kami mentakrifkan peraturan pengesahan untuk data borang. 🎜web.php
dalam direktori config
: 🎜🎜rrreee🎜Dalam kod di atas, kami menambah kod berikut dalam controllerMap item konfigurasi <code>form
dikaitkan dengan pengawal appcontrollersFormController
. 🎜http://yourdomain.com/form
dalam bar alamat penyemak imbas untuk mengakses halaman borang. Selepas mengisi borang dan menyerahkannya, halaman kejayaan akan dipaparkan. 🎜🎜🎜Ringkasan: 🎜Artikel ini memperincikan langkah-langkah untuk melaksanakan penyerahan dan pemprosesan borang menggunakan rangka kerja Yii. Dengan mencipta fail paparan borang, pengawal, model dan mengkonfigurasi peraturan penghalaan, kami boleh menyerahkan dan memproses borang dengan mudah. Pada masa yang sama, rangka kerja Yii menyediakan pelbagai komponen dan fungsi untuk menjadikan pemprosesan borang lebih mudah dan cekap. 🎜Atas ialah kandungan terperinci Langkah-langkah untuk melaksanakan penyerahan dan pemprosesan borang menggunakan rangka kerja Yii. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!