[英]Laravel, store multiple variables from array into DB
我不確定問題標題是否正確,但在下面的示例中我想做的很清楚我有 3 個 arrays 並且我想將數據存儲在一個表中
表結構是這樣的
表名:tour_transsports
ID
transport_id
運輸軌道
transport_note
arrays 來自刀片
"transport_id" => array:2 [
1 => "1"
5 => "5"
]
"transport_track" => array:3 [
1 => " from airport to the hotel"
3 => null
5 => " be ready at 4:pm"
]
"transport_note" => array:3 [
1 => "from hotel to the beach"
3 => null
5 => " bring ur swiming suite"
]
所以你看到id是1和5所以我想在這里存儲兩行
id = 1,transport_id = 1, transport_track = 從機場到酒店, transport_note = 4:pm 准備好
id = 2,transport_id = 5, transport_track = 從酒店到海灘, transport_note = 帶上你的游泳套房
我試圖這樣做,但無法正確
if(!empty($request->transport_id))
{
foreach ($request->transport_id as $key => $transport_id) {
foreach ($request->transport_track as $key => $track) {
foreach ($request->transport_note as $key => $transport_note) {
TourTransport::create([
'transport_id' =>$transport_id,
'transport_track' =>$track[$transport_id],
'transport_note' =>$transport_note[$transport_id]
]);
}
}
}
}
您可以使用此代碼來實現您的結果:
$data = $request->only('transport_id', 'transport_track', 'transport_note');
foreach ($data['transport_id'] as $key => $transportId) {
TourTransport::create([
'transport_id' => $transportId,
'transport_track' => $data['transport_track'][$key],
'transport_note' => $data['transport_note'][$key],
]);
}
現在 $results 包含所需的數據。 然而,更好的解決方案可能是配置您的 html 表單以在單個數組條目中發送相關數據,例如:
<input type="text" name="transports[0][transport_id]">
<input type="text" name="transports[0][transport_track]">
<input type="text" name="transports[0][transport_note]">
<input type="text" name="transports[1][transport_id]">
<input type="text" name="transports[1][transport_track]">
<input type="text" name="transports[1][transport_note]">
您還可以使用 Javascript/php 循環來生成表單輸入。 然后您將在服務器端以格式良好的結構接收表單數據,例如:
"transports" => array:2 [
[
'transport_id' => 1,
'transport_track' => 'from airport to the hotel',
'transport_note' => 'be ready at 4:pm',
],
[
'transport_id' => 5,
'transport_track' => 'from hotel to the beach',
'transport_note' => ' bring ur swiming suite',
],
]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.