今天遇到一個問題,要保存很多表單信息,苦惱了許久,終於發現一個挺不錯的方法,以數組的形式把表單中的數據提交至後台進行保存。
其實實現起來很簡單,就是給表單中要提交的信息的name命名時要有一定的規范,我們先比較下下面這兩種方式的差別:
第一種、普通的方式,每個要提交的值都有一個名稱
<form id="form1" action="./index.php" method="get"> <div class="form-control"> <input type="text" name="name1" /> <input type="text" name="num1" /> <input type="text" name="img1" /> </div> <br> <div class="form-control"> <input type="text" name="name2" /> <input type="text" name="num2" /> <input type="text" name="img2" /> </div> <br> <div class="form-control"> <input type="text" name="name3" /> <input type="text" name="num3" /> <input type="text" name="img3" /> </div> ...... <input type="submit" value="Submit" /> </form>
服務(index.php)很簡單就兩句話
<?php echo "<pre>"; print_r($_GET);
在渲染好的網頁上填入下面信息並點擊提交
<form id="form1" action="./index.php" method="get"> <div class="form-control"> <input type="text" name="infos[1][name]" /> <input type="text" name="infos[1][num]" /> <input type="text" name="infos[1][img]" /> </div> <br> <div class="form-control"> <input type="text" name="infos[2][name]" /> <input type="text" name="infos[2][num]" /> <input type="text" name="infos[2][img]" /> </div> <br> <div class="form-control"> <input type="text" name="infos[3][name]" /> <input type="text" name="infos[3][num]" /> <input type="text" name="infos[3][img]" /> </div> ...... <input type="submit" value="Submit" /> </form>
細心看看就會發現,要提交的數據的名字name發生了變化,在這裡看可能還不太明顯,當點擊提交後會發現傳到後端的值整齊多了,看看下面的截圖
通過浏覽器插件解析過的查詢字符串是這樣的
<form id="form1" action="./index.php" method="get"> <div class="form-control"> <input type="text" name="infos[name][]" /> <input type="text" name="infos[num][]" /> <input type="text" name="infos[img][]" /> </div> <br> <div class="form-control"> <input type="text" name="infos[name][]" /> <input type="text" name="infos[num][]" /> <input type="text" name="infos[img][]" /> </div> <br> <div class="form-control"> <input type="text" name="infos[name][]" /> <input type="text" name="infos[num][]" /> <input type="text" name="infos[img][]" /> </div> ...... <input type="submit" value="Submit" /> </form>
先看看浏覽器傳遞的數據
本文版權歸作者iforever([email protected])所有,未經作者本人同意禁止任何形式的轉載,轉載文章之後必須在文章頁面明顯位置給出作者和原文連接,否則保留追究法律責任的權利。