According to the description in the Yii documentation, the general process of Yii processing forms is: Create a model class corresponding to the form and set field validation rules Create an action corresponding to form submission and process the submitted content Create a form in the view In a small project just now, I wanted to use ajax to submit form information and verify and save it, but I didn’t want to use a hidden iframe for non-refresh submission, and the verification method of the model class could be used in the action, so I thought of using the form array submission method. . Example, form code:
After submission, you can directly use $_POST['arr'] to get the submitted data. $_POST['arr'] is: Array ( [0] => a [1] => b [2] => c ) Similarly, if you use the following form to submit:
$_POST['arr'] as: Array ( [3] => a [6] => b [8] => c ) Of course you can also submit a two-dimensional array: $_POST['arr'] is: Array ( [0] => Array ( [name1] => a ) [1] => Array ( [name2] => b ) [2] => Array ( [name3] => c ) ) There is a problem here. If you do not set the key of the first sub-array, each value will be added to arr sequentially when generating the array. If you want to save the information in an array, just add a key value, as follows:
$_POST['arr'] is: Array ( [a] => Array ( [name1] => a1 [value1] => a2 ) => Array ( [name2] => b1 [value2] => b2 ) ) An example of using ajax to submit a form and verifying it using the yii form model. The first is the model class part, which has only the simplest verification method:
The model class is setting parameters When verifying the method, you need to set rules for each public parameter. If there are parameters without set rules, after assigning values to the model using the form value in $_POST, the parameter values without set rules will be empty. Get the parameters submitted by the form in the action and verify:
The last is the code for the front-end submission form part, using jquery:
|