@csrf 將多個複選框的值和不同的輸入值作為一個整體保存到資料庫中-PHP中文網路問答 文章 專題 學習 下載 問答 程式設計字典 遊戲 最近更新 登入 简体中文(ZH-CN) English(EN) 繁体中文(ZH-TW) 日本語(JA) 한국어(KO) Melayu(MS) Français(FR) Deutsch(DE) 後端開發 網頁前端 Web3 常見問題 手機遊戲教程 資料庫 前端 HTML | CSS | JavaScript | Vue.js 後端 PHP | ThinkPHP | Laravel | MySQL | Redis 最新推薦 php8,我來也 84669 人學習 原生基礎 HTML | CSS | HTML5 | CSS3 | JavaScript 框架開發 jQuery | Vue.js | React | AngularJS | Node.js | BootStrap | AJAX | Foundation 最新推薦 30分鐘學會網站佈局 152542 人學習 程式設計語言 PHP | Python | Go | Java | C | C++ | C# | VBSscript | Scala | Lua | Perl | Ruby | JSP | XML | ASP 框架/工具 ThinkPHP | Laravel | Servlet | Django | ASP.NET 基礎入門 MySQL | SQL Server 進階學習 MongoDB | Oracle | Redis | Memcached 最新推薦 尚觀Oracle入門到精通視頻教程 20005 人學習 原生開發 Android | iOS 多端開發 Swift | Flutter | uni-app | 小程式 | 其他 最新推薦 你的第一行UNI-APP程式碼 5487 人學習 Flutter 從頭到應用程式啟動 7821 人學習 環境使用 Linux | Docker 工具使用 PhpStudy | Git | 其他工具 最新推薦 兄弟連新版Linux視頻教程 359900 人學習 UI設計 Axure | PS 最新推薦 AXURE 9影片教學(適用於產品經理互動產品設計UI) 3350 人學習 零基礎PS影片教學 180660 人學習 16天帶你入門UI視頻教程 48569 人學習 PS技巧和切片技巧影片教學 18603 人學習 類別庫分類 HTTP | TCP/IP | 基礎程式設計 最新推薦 阿裡雲環境搭建以及項目上線視頻教程 40936 人學習 電腦網路概述-程式設計師必須掌握的基礎知識 1549 人學習 程式設計師必備教學——HTTP協定講解 1183 人學習 Websocket影片教學 32909 人學習 將多個複選框的值和不同的輸入值作為一個整體保存到資料庫中 P粉807471604 2023-08-31 11:17:47 0 1 395 我正在嘗試將資料/值插入我的資料庫中。 它可以工作,但問題是每次我只選擇第二個值/複選框時,它的其他輸入值會得到第一個輸入的值。 @csrf JasminBooks KnowHowBooks 這是我的控制器函數的程式碼 public function reservation(Request $request) { $data = new reservation; $data->name = $request->name; $data->email = $request->email; $data->phone = $request->phone; $data->address = $request->address; $data->date = $request->date; $data->time = $request->time; $products = null; $checked_array = $_POST['prod_name']; foreach($_POST['prod_name'] as $key => $value) { if (in_array($_POST['prod_name'][$key], $checked_array)) { $products .= $_POST['prod_qty'][$key]." ".$_POST['prod_name'][$key].", "; } } $data->products = $products; $data->save(); return redirect()->back(); } 當 我選擇第一個複選框並輸入數量為5的值時,結果是“5 JasminBooks,” 當我同時選擇兩個複選框並在第一個複選框旁邊的第一個輸入框中輸入數量為12,在第二個複選框旁的第二個輸入框中輸入數量為7時,結果是「12 JasminBooks,7 KnowHowBooks,」 但是當我只選擇第二個複選框並在數量輸入框中輸入13時,結果是“1 KnowHowBooks,”它取了第一個輸入的預設值,而不是我在第二個輸入框中插入的數量13。 我應該在我的程式碼中添加/更改什麼? 1 0 0 P粉807471604 全部回覆 (1) 我來回復 關閉 P粉5877801032023-09-01 09:44:11 1樓 這是因為你是根據索引來定義你的數量欄位的。如果一個輸入缺失,可能會影響你的整個結果。使用值作為鍵: HTML: JasminBooks PHP: $products = ''; $checked_array = $request->input('prod_name', []); $quantities = $request->input('prod_qty', []); foreach ($checked_array as $value) { if (array_key_exists($value, $quantities)) { $products .= "{$quantities[$value]} {$value}, "; } } // 移除末尾的 ', ' if (! empty($products)) { $products = substr($products, 0, -2); } $data->products = $products; P.S. 像 Bhaumik 說的那樣,在 Laravel 中不要使用$_POST。 點贊+0 新增回覆 关闭回复 P粉807471604 回覆 熱門專題 更多> a5紙多大尺寸 註冊網域查詢工具 nohup和&的差別 c語言中+=的意思介紹 熱門文章 比特幣 (BTC) 短暫升至 6 萬美元以上,但放棄漲幅,在 6 萬美元大關附近交易,模仿股票市場的走勢 邁克爾·塞勒 (Michael Saylor) 為比特幣的波動性辯護,稱其為流動性和信用的'你付出的代價” 在 Laravel 中製作可重複使用的模型搜尋:高效設定和最佳實踐 蘋果新專利曝光! AI輔助,記錄人生新篇章? 冷靜之靴可以減少多少冷卻 熱門教學 更多> 相關教學 熱門推薦 最新課程 最新ThinkPHP 5.1全球首發影片教學(60天成就PHP大牛線上訓練課程) 1394924 php入門教程之一週學會PHP 4206654 JAVA 初級入門影片教學 2351049 最新ThinkPHP 5.1全球首發影片教學(60天成就PHP大牛線上訓練課程) 1394924 JAVA 初級入門影片教學 2351049 小甲魚零基礎入門學習Python影片教學 493329 Web前端開發極速入門 213422 零基礎精通 PS 影片教學 843312 【web前端】Node.js快速入門 3155 國外Web開發全端課程全集 2549 Go語言實戰之 GraphQL 1991 550W粉絲大佬手把手從零學JavaScript 465 python大神Mosh,零基礎小白6小時完全入門 10900 最新下載 更多> 網站特效 網站源碼 網站素材 前端模板 [表單按鈕] jQuery企業留言表單聯絡程式碼 [播放器特效] HTML5 MP3音樂盒播放特效 [選單導航] HTML5酷炫粒子動畫導覽選單特效 [表單按鈕] jQuery可視化表單拖曳編輯程式碼 [播放器特效] VUE.JS仿酷狗音樂播放器代碼 [html5特效] 經典html5推箱子小遊戲 [圖片特效] jQuery滾動添加或減少圖片特效 [相簿特效] CSS3個人相簿封面懸停放大特效 [Bootstrap模板] 有機蔬果供應商網頁範本 Bootstrap5 [後端模板] Bootstrap3多功能資料資訊後台管理響應式網頁範本-Novus [Bootstrap模板] 房產資源服務平台網頁範本 Bootstrap5 [Bootstrap模板] 簡約履歷資料網頁範本 Bootstrap4 [Bootstrap模板] bootstrap響應式寬螢幕圖書教育網站範本-DREAMLIFE [後端模板] MAC風格響應式藍色企業CMS後台管理系統模版 [後端模板] 響應式漸層大氣後台管理系統網站模板-usinessbox [Bootstrap模板] 響應式蔬果商店網站模板-Organio [PNG素材] 可愛的夏天元素向量素材(EPS+PNG) [PNG素材] 四個紅色的 2023 畢業徽章的向量素材(AI+EPS+PNG) [banner圖] 唱歌的小鳥和裝滿花朵的推車設計春天banner向量素材(AI+EPS) [PNG素材] 金色的畢業帽向量素材(EPS+PNG) [PNG素材] 黑白風格的山脈圖示向量素材(EPS+PNG) [PNG素材] 不同顏色披風和不同姿勢的超級英雄剪影向量素材(EPS+PNG) [banner圖] 扁平風格的植樹節banner向量素材(AI+EPS) [PNG素材] 九種漫畫風格的爆炸聊天氣泡向量素材(EPS+PNG) [前端模板] 家居裝潢清潔維修服務公司網站模板 [前端模板] 清新配色個人求職履歷引導頁模板 [前端模板] 設計師創意求職履歷網頁模板 [前端模板] 現代工程建築公司網站模板 [前端模板] 教育服務機構響應式HTML5模板 [前端模板] 網上電子書店商城網站模板 [前端模板] IT技術解決互聯網公司網站模板 [前端模板] 紫色風格外匯交易服務網站模板 關於我們 免責聲明 Sitemap PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!
84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
我正在嘗試將資料/值插入我的資料庫中。
它可以工作,但問題是每次我只選擇第二個值/複選框時,它的其他輸入值會得到第一個輸入的值。
JasminBooks
KnowHowBooks
這是我的控制器函數的程式碼
public function reservation(Request $request) { $data = new reservation; $data->name = $request->name; $data->email = $request->email; $data->phone = $request->phone; $data->address = $request->address; $data->date = $request->date; $data->time = $request->time; $products = null; $checked_array = $_POST['prod_name']; foreach($_POST['prod_name'] as $key => $value) { if (in_array($_POST['prod_name'][$key], $checked_array)) { $products .= $_POST['prod_qty'][$key]." ".$_POST['prod_name'][$key].", "; } } $data->products = $products; $data->save(); return redirect()->back(); }
當
我應該在我的程式碼中添加/更改什麼?
這是因為你是根據索引來定義你的數量欄位的。如果一個輸入缺失,可能會影響你的整個結果。使用值作為鍵:
HTML:
PHP:
$products = ''; $checked_array = $request->input('prod_name', []); $quantities = $request->input('prod_qty', []); foreach ($checked_array as $value) { if (array_key_exists($value, $quantities)) { $products .= "{$quantities[$value]} {$value}, "; } } // 移除末尾的 ', ' if (! empty($products)) { $products = substr($products, 0, -2); } $data->products = $products;
P.S. 像 Bhaumik 說的那樣,在 Laravel 中不要使用$_POST。
$_POST