PHP選項:getlastmod()的用法
874
2023-12-14
一 問題
在公司的開發過程中,遇到了一個問題:如何處理 form 表單提交了多個 name 屬性值相同的 input 標簽?源碼如下(源碼是在 form 表單之中的):
<{loop $address $index $one}--> <div class="address_item"> <p> <label> <input type="hidden" name="express_price" value="{$one['express_price']}" /> <input type="hidden" name="state_fare" value="{$one['state_fare']}" /> <input type="hidden" name="id" value="{$one['id']}" /> <input type="radio" <{if $one[ 'default']=='Y' }-->checked<{/if}-->name="address" value="{$one['id']}" /><span name="mobile">{$one['mobile']}</span> </label> </p> </div> <{/loop}-->
二 解決方法
在上述源碼中,通過 loop 循環,在 form 表單中生成了多個name屬性值相同的 input 元素,當點擊提交時,后臺的 php 文件使用 $_POST 僅能獲取到一個 div 元素中的 input元素傳過來的值,但是,radio 類型的 input 元素傳過來的值一定是被選中的那一個。據此,修改上述源碼中一些 input 元素的相同 name 屬性值為數組,再在后臺 php 文件通過被選中的 radio 類型的 input 元素的 name 屬性值,確定所傳過來的整個 div 元素。修改后的代碼如下:
<{loop $address $index $one}--> <div class="address_item"> <p> <label> <input type="hidden" name="express_price[]" value="{$one['express_price']}" /> <input type="hidden" name="state_fare[]" value="{$one['state_fare']}" /> <input type="hidden" name="id[]" value="{$one['id']}" /> <input type="radio" <{if $one[ 'default']=='Y' }-->checked<{/if}-->name="address" value="{$one['id']}" /> <span name="mobile">{$one['mobile']}</span> </label> </p> </div> <{/loop}-->
php 文件:
$key = 0; $address_id = intval($_POST["address"]); foreach ($_POST['id'] as $k => $v) { if ($v == $address_id) $key = $k; } $_POST['express_money'] = $_POST['exporess_price'][$key];
以上所述是小編給大家介紹的解決php 處理 form 表單提交多個 name 屬性值相同的 input 標簽問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對綠夏網網站的支持!
#免責聲明#
本站[綠夏技術導航]提供的一切軟件、教程和內容信息僅限用于學習和研究目的;不得將上述內容用于商業或者非法用途,否則,一切后果請用戶自負。本站信息來自網絡收集整理,版權爭議與本站無關。您必須在下載后的24個小時之內,從您的電腦或手機中徹底刪除上述內容。如果您喜歡該程序或內容,請支持正版,購買注冊,得到更好的正版服務。我們非常重視版權問題,如有侵權請郵件[admin@lxwl520.com]與我們聯系進行刪除處理。敬請諒解!