読者です 読者をやめる 読者になる 読者になる

php 同一nameのフォームをpostした場合、後に書いたものが優先される

php

ケース1

<form method="post" action="/test.php">
<input type="hidden" value="hidden" name="col1" />
<input type="text" value="" name="col1" />
<input type="submit" value="send" />
</form>
<?php
print_r($_POST);
?>

テキストボックスに「text」と入力してpostした時のprint_rの結果、テキストボックスが優先される

Array ( [col1] => text )

ケース2(textboxとhiddenの順番を代える)

<form method="post" action="/test.php">
<input type="text" value="" name="col1" />
<input type="hidden" value="hidden" name="col1" />
<input type="submit" value="send" />
</form>
<?php
print_r($_POST);
?>

テキストボックスに「text」と入力してpostした時のprint_rの結果、hiddenが優先される

Array ( [col1] => hidden )

要は、同一nameのフォームをpostすると、後に書いたものが優先されるということになる。
chrome,firefox,ie11,safariで動作確認済み。