複数のフィールドに入力できるフォームがあります。フィールドの量は固定ではなく、ユーザーの入力に依存します。送信前に投稿データを結合する
簡略化された形式は:
<form method="POST" action="post.php">
Field one: <input type="text" name="field[]" /><br />
Field two: <input type="text" name="field[]" /><br />
Field three: <input type="text" name="field[]" /><br />
<br /><br />
Checkbox one: <input type="checkbox" name="check[]" value="1" /><br />
Checkbox two: <input type="checkbox" name="check[]" value="1" /><br />
Checkbox three: <input type="checkbox" name="check[]" value="1" /><br />
<br /><br />
<input type="submit" value="Submit" />
</form>
私が直面してる問題、field one
がtwo
two
でというように、checkbox one
とペアにしなければならないということです。これは難しいとは言えませんよね?すべてがチェックされ、入力されている場合、そうではありません:PHPで
Array
(
[field] => Array
(
[0] => one
[1] => two
[2] => three
)
[check] => Array
(
[0] => 1
[1] => 1
[2] => 1
)
)
私は一緒に配列インデックスをリンクする可能性があり、すべてが順調です。私が直面している問題は、2番目のチェックボックスを選択しないときです。
Array
(
[field] => Array
(
[0] => one
[1] => two
[2] => three
)
[check] => Array
(
[0] => 1
[1] => 1
)
)
この状況に対処するための最良の方法は何ですか:あなたはそれを行う場合は、以下check post data
内の1つのエントリがあるでしょうか? Ajaxの送信はオプションではありませんが、JavaScriptの操作は可能です。
私は要素ごと(1、2、3)にJSで配列を作成し、そのデータを送信する方法を考えていました。問題は、私はそれをどうやってやるべきか、あるいはこの問題を扱う良い方法があるのか?
多分チェックボックスのための隠しテキストフィールド。チェックボックスをオンにすると、非表示フィールドは値を取得し、そうでない場合は非表示フィールドが空になります。 – Eugen