-
flux1on Junior Member
 
-
Posts: 15
Threads: 7
Joined: Apr 2020
Reputation:
0
I have data JSON Batch from Upload File
Code: [{"params_invoicenumber":"INVCPLCM02353642","params_member":1,"params_sdate":"2022-01-02 19: 01: 00","params_edate":"2022-12-31 15: 06: 00","params_diagnose_early":[1,2,3],"params_diagnose_final":[3,2,1],"params_detail":[{"params_benefit":1,"params_invoice":2400000,"params_quantity":2,"params_excess":200000,"params_nonbenefit":200000,"params_desc":"Testing"},{"params_benefit":3,"params_invoice":2200000,"params_quantity":2,"params_excess":0,"params_nonbenefit":200000,"params_desc":"Testing"}],"params_created":1},{"params_invoicenumber":"INVCPLCM02353642","params_member":1,"params_sdate":"2022-01-02 19: 01: 00","params_edate":"2022-12-31 15: 06: 00","params_diagnose_early":[1,2,3],"params_diagnose_final":[3,2,1],"params_detail":[{"params_benefit":1,"params_invoice":2400000,"params_quantity":2,"params_excess":200000,"params_nonbenefit":200000,"params_desc":"Testing"},{"params_benefit":3,"params_invoice":2200000,"params_quantity":2,"params_excess":0,"params_nonbenefit":200000,"params_desc":"Testing"}],"params_created":1}]
My controller
PHP Code: $dataValidate = json_decode($this->request->getPost('params_json'), true);
$validationRulesClaim = [ '*.params_invoicenumber' => 'required|alpha_numeric|max_length[16]|is_unique[sm_claim.claim_invoicenumber]', '*.params_member' => 'required|integer', '*.params_sdate' => 'required|valid_date[Y-m-d H:i:s]', '*.params_edate' => 'required|valid_date[Y-m-d H:i:s]', '*.params_diagnose_early' => 'required|valid_json', '*.params_diagnose_final' => 'required|valid_json', '*.params_detail' => 'required|valid_json', '*.params_created' => 'required|integer', ];
$this->validation->setRules($validationRulesClaim);
if ($this->validation->run($dataValidate)) {
In result not my expectation
Code: "validation": {
"*.params_diagnose_early": "Diagnose Early must be required",
"*.params_diagnose_final": "Diagnose Final must be required",
"*.params_detail": "Detail Claim must be required"
}
What are my doing to this set validation, or this bug?
-
flux1on Junior Member
 
-
Posts: 15
Threads: 7
Joined: Apr 2020
Reputation:
0
(12-21-2022, 12:01 AM)JustJohnQ Wrote: After you json_decode the data, there is no json in the array as you will see with print_r($dataValidate)
your 'valid_json' rule will fail.
When you set :
Code: $validationRulesClaim = [
'*.params_invoicenumber' => 'required|alpha_numeric|max_length[16]|is_unique[sm_claim.claim_invoicenumber]',
'*.params_member' => 'required|integer',
'*.params_sdate' => 'required|valid_date[Y-m-d H:i:s]',
'*.params_edate' => 'required|valid_date[Y-m-d H:i:s]',
'*.params_diagnose_early' => 'required',
'*.params_diagnose_final' => 'required',
'*.params_detail' => 'required',
'*.params_created' => 'required|integer',
];
Still appear same result
-
JustJohnQ Member
  
-
Posts: 237
Threads: 3
Joined: Mar 2022
Reputation:
13
Just to test, does this work:
Code: '*.params_diagnose_early.*' => 'required',
'*.params_diagnose_final.*' => 'required',
'*.params_detail.*' => 'required',
-
flux1on Junior Member
 
-
Posts: 15
Threads: 7
Joined: Apr 2020
Reputation:
0
(12-21-2022, 12:17 AM)JustJohnQ Wrote: Just to test, does this work:
Code: '*.params_diagnose_early.*' => 'required',
'*.params_diagnose_final.*' => 'required',
'*.params_detail.*' => 'required',
Okay, thankyou
|