Comment gérer les formulaires déroulants à sélection multiple pour chaque ligne lors de la mise en œuvre de l'enregistrement dynamique des formulaires dans Laravel
P粉301523298
2023-08-31 10:43:09
<p>Dans mon formulaire, j'ai une table dynamique avec des listes déroulantes à sélection multiple color_id[] et size_id[] avec le même nom dans chaque ligne. Je ne sais pas comment enregistrer plusieurs valeurs sélectionnées sous forme de valeurs séparées par des virgules dans chaque ligne stockée dans la base de données. J'ai essayé de sauvegarder dans la base de données ici mais cela n'a pas fonctionné. </p>
<p>Code HTML : </p>
<pre class="brush:php;toolbar:false;"><table><tbody><td><select name="color_id[]" class="select2" id=" ;color_id" style="largeur:200px;hauteur:100px;"obligatoire multiple></select></td> <select name="size_id[]" select2" id="size_id" style="width:200px height:100px;" requis multiple</select></td></tbody></table></pre>
<p>Code Laravel enregistré dans le contrôleur :</p>
<pre class="brush:php;toolbar:false;">$class_ids = $request->input('class_ids');
pour($x=0; $x<count($class_ids); $x++) {
#code...
$color_ids = imploser(',', $request->color_id[$x]);
$size_ids = imploser(',', $request->size_id[$x]);
$data3[]=tableau(
'bom_code'=>$TrNon,
'bom_date'=>$request->bom_date,
'cost_type_id'=>$request->cost_type_id,
'Ac_code'=>$request->Ac_code,
'season_id'=>$request->season_id,
'currency_id'=>$request->currency_id,
'code_article' => $request->codes_article[$x],
'class_id' => $request->class_ids[$x],
'description' => $requête->descriptions[$x],
'color_id' =>
'size_array' => $size_ids,
'consommation' => $request->consommations[$x],
'id_unité'=> $request->id_unité[$x],
'rate_per_unit' => $request->rate_per_units[$x],
'gaspillage' => $request->gaspillage[$x],
'bom_qty' => $request->bom_qtys[$x],
'montant_total' => $request->montants_total[$x],
);
}
BOMSewingTrimsDetailModel::insert($data3);</pre>
J'ai ajouté deux zones de saisie masquées nommées color_arrays[] et size_arrays[] dans la même colonne de chaque ligne. J'ai écrit la fonction JavaScript suivante pour obtenir les valeurs séparées par des virgules à partir d'une liste déroulante à sélection multiple pour la couleur et la taille et enregistrer la valeur de la zone de saisie masquée dans la base de données.
Cela fonctionne pour moi.