HTML で記述された大きなフォーム (1,000 以上input
の要素) があります。フォームのアクションを に設定しましたがupdate.php
、奇妙な動作に遭遇していました。$_POST がどこかでリセットされているようです。
update.php
外観は次のとおりです。
<?php
empty($_POST);
print_r($_POST);
?>
どの出力:
Array
(
[date] => 3 October 2012
[date2] =>
[to] =>
[number] => 0005
[contact] =>
[address] =>
[contact_tel] =>
[contact_fax] =>
[contact_mob] =>
[contact_email] =>
[site_contact] =>
[site_address] =>
[site_contact_tel] =>
[site_contact_fax] =>
...
);
奇妙なこと$_POST['date']
に、値がありません (つまり、空のフィールドです)。フォームを更新update.php
して再投稿しても効果はありません。PHP が報告する値は、最初にフォームを送信したときの元の値です。
アクションを$_GET
期待どおりに機能するように変更します (つまり、正しい変数がリンクで渡されます) が、主に URL が長くなりすぎてサーバー エラーが発生するため、このソリューションを使用できません。
なぜこれが起こっているのか誰にもわかりません。コードを投稿しますが、長すぎます。
フォームの HTML の PasteBin は次のとおりです > http://pastebin.com/rdQujigK