Getting Data from Users
Getting Data from Users Yii 2
Content of the «Getting Data from Users» section:
- Creating Forms
- Validating Input
- Uploading Files
- Collecting Tabular Input
- Getting Data for Multiple Models
- Extending ActiveForm on the Client Side
Articles section «Getting Data from Users»:
- Details
- Parent Category: The Definitive Guide to Yii 2.0
- Category: Getting Data from Users
Extending ActiveForm on the Client Side
The [[yii\widgets\ActiveForm]] widget comes with a set of JavaScript methods that are used for client validation. Its implementation is very flexible and allows you to extend it in different ways. In the following these are described.
- Details
- Parent Category: The Definitive Guide to Yii 2.0
- Category: Getting Data from Users
Getting Data for Multiple Models
When dealing with some complex data, it is possible that you may need to use multiple different models to collect the user input. For example, assuming the user login information is stored in the user
table while the user profile information is stored in the profile
table, you may want to collect the input data about a user through a User
model and a Profile
model. With the Yii model and form support, you can solve this problem in a way that is not much different from handling a single model.
- Details
- Parent Category: The Definitive Guide to Yii 2.0
- Category: Getting Data from Users
Collecting tabular input
Sometimes you need to handle multiple models of the same kind in a single form. For example, multiple settings, where each setting is stored as a name-value pair and is represented by a Setting
active record model. This kind of form is also often referred to as "tabular input". In contrast to this, handling different models of different kind, is handled in the section Complex Forms with Multiple Models.
- Details
- Parent Category: The Definitive Guide to Yii 2.0
- Category: Getting Data from Users
Uploading Files
Uploading files in Yii is usually done with the help of [[yii\web\UploadedFile]] which encapsulates each uploaded file as an UploadedFile
object. Combined with [[yii\widgets\ActiveForm]] and models, you can easily implement a secure file uploading mechanism.
- Details
- Parent Category: The Definitive Guide to Yii 2.0
- Category: Getting Data from Users
Validating Input
As a rule of thumb, you should never trust the data received from end users and should always validate it before putting it to good use.
Given a model populated with user inputs, you can validate the inputs by calling the [[yii\base\Model::validate()]] method. The method will return a boolean value indicating whether the validation succeeded or not. If not, you may get the error messages from the [[yii\base\Model::errors]] property. For example,
- Details
- Parent Category: The Definitive Guide to Yii 2.0
- Category: Getting Data from Users