0

管理者がチェックボックスを介して複数のデータベースエントリ(クライアント)を選択できるようにする必要があるサイトを構築しています。関連するクライアントが選択されると、ボタンをクリックして、選択したクライアントのみの電子メールを作成できるページにリダイレクトできます。私のチェックボックスは次のように設定されています。

<input name = 'checked_residents' value='1' id = '1' type='checkbox' />
<input name = 'checked_residents' value='2' id = '2' type='checkbox' />
<input name = 'checked_residents' value='3' id = '3' type='checkbox' />

次に、ボタン(id ='mail_selected')があります。このボタンをクリックすると、選択したチェックボックスのすべてのIDを含む配列を作成できます。以下のコードを参照してください。

$('#mail_selected').click(function(event) {
    $(':checkbox[name="checked_residents"]:checked');
    var selectedID = [];
        $(':checkbox[name="checked_residents"]:checked').each (function () {
            var tempStr = this.id;
            selectedID.push(tempStr);
        });     
});

私の問題は、selectedID配列をphpファイル「mailer_client.php」に送信する必要があることですが、すぐにそのページにリダイレクトし、「EmailTo」入力フィールドにそれぞれのIDからのすべての電子メールを入力する必要があります。

私が何をしようとしているのかを正確に理解するのは難しいかもしれないことに気づきました...私は自分自身に確信が持てません。問題について不明な点がありましたらお問い合わせください。

4

1 に答える 1

1

チェックボックスの名前を次のように配列のように変更した場合:

<input name = 'checked_residents[]' value='1' id = '1' type='checkbox' />
<input name = 'checked_residents[]' value='2' id = '2' type='checkbox' />
<input name = 'checked_residents[]' value='3' id = '3' type='checkbox' />

そうすれば、PHPで配列としてそれらを受け取り$_REQUEST['checked_residents']、配列を自分で作成して送信するために現在のコードは必要ありません。

次に、次のようにメールに入力できます。

foreach ($_REQUEST['checked_residents'] as $val) {
   $email_to .= get_email_for_id($val) . ' , ';
}
于 2012-10-10T20:58:33.660 に答える