In diesem Artikel wird hauptsächlich erläutert, wie das Problem der Eingabe von Tags mit demselben Namensattributwert beim Senden mehrerer Formularformulare in PHP gelöst werden kann. Jetzt können Freunde in Not darauf verweisen
Eine Frage
Während des Entwicklungsprozesses des Unternehmens sind wir auf ein Problem gestoßen: Wie gehen wir mit der Formularübermittlung mehrerer Eingabe-Tags um? mit demselben Namensattributwert? Der Quellcode lautet wie folgt (der Quellcode hat die Form):
<!--{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}-->
Zweite Lösung
Im obigen Quellcode werden durch die Schleife mehrere Eingabeelemente mit demselben Namensattributwert im Formular generiert. Wenn Sie auf „Senden“ klicken, kann die Hintergrund-PHP-Datei die Eingabe nur in einem p-Element mithilfe von $_POST abrufen . Der vom Element übergebene Wert, der vom Radiotyp-Eingabeelement übergebene Wert muss jedoch der ausgewählte sein. Ändern Sie dementsprechend den gleichen Namensattributwert einiger Eingabeelemente im obigen Quellcode in ein Array und verwenden Sie dann den Namensattributwert des ausgewählten Radiotyp-Eingabeelements in der Hintergrund-PHP-Datei, um das gesamte übergebene p-Element zu bestimmen. Der geänderte Code lautet wie folgt:
<!--{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-Datei:
$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];
Verwandte Empfehlungen :
Lösen Sie unter Linux das Problem der Inkonsistenz zwischen PHP -v- und PHPInfo-Versionen
Das obige ist der detaillierte Inhalt vonLösen Sie das Problem der PHP-Verarbeitung der Formularübermittlung mehrerer Eingabe-Tags mit demselben Namensattributwert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!