ホームページ >バックエンド開発 >PHPチュートリアル >同じ name 属性値を持つ複数の input タグのフォーム送信を PHP が処理する問題を解決する
この記事では、同じ名前の属性値を持つ複数の入力タグの PHP 処理のフォーム送信の問題を解決する方法を主に紹介します。必要な友達と共有します。
1 つの質問会社の開発プロセス中に、同じ name 属性値を持つ複数の input タグのフォーム送信をどのように処理するかという問題に遭遇しました。ソースコードは次のとおりです(ソースコードは次の形式です):
<!--{loop $address $index $one}--> <p 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> </p> <!--{/loop}-->第二の解決策
上記のソースコードでは、loopループを通じて、同じ値を持つ複数のname属性が生成されますinput 要素の場合、[送信] をクリックすると、バックグラウンド php ファイルは $_POST を使用して、p 要素の input 要素によって渡された値のみを取得します。ただし、ラジオ タイプの input 要素によって渡された値は、選択された値である必要があります。 。そこで、上記ソースコードの一部のinput要素の同じname属性値を配列に変更し、バックグラウンドphpファイルで選択したradio type input要素のname属性値を利用して、渡されるp要素全体を決定します。変更されたコードは次のとおりです:
<!--{loop $address $index $one}--> <p 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> </p> <!--{/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];関連推奨事項:
Linux では、php -v バージョンと phpinfo バージョン間の不一致の問題を解決します
方法Webページのデータを取得するときにfile_get_contentsメソッドが文字化けするというPHPの問題を解決するには
以上が同じ name 属性値を持つ複数の input タグのフォーム送信を PHP が処理する問題を解決するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。