0

おそらくあなたが今まで聞いた中で最もばかげた質問をするつもりです (恥を知れ)。次のようなテーブルのマークアップを作成したいと思います。

============================================================
| Layout  | Date edited | Actions | Is active | Is default |
============================================================
| lauout1 | 04.05.2012  |[Delete] |    [ ]    |     o      |
...

4 番目と 5 番目の列には、対応するチェック ボックスとラジオ ボタンが含まれ、3 番目の列にはボタンが含まれています。ボタンの送信は、サイトの 1 つのページで進め、ラジオ付きのチェック ボックスをもう 1 つのページで行う必要があります。しかし、この質問によれば、ある要素を別の要素内に配置することはできません! テーブル全体に 1 つのグローバルと、各削除ボタンに 1 つのグローバルを意味します。私は本当にひどいことをするつもりだと思う.. 正しい解決策は何ですか?

4

1 に答える 1

0

テーブル全体を含む1つのフォーム要素を引き続き使用し、必要な数の送信ボタンを削除することができます。各ボタンの名前は、値とともにスクリプトに送信されます。例えば:

<form method="post">
    <!-- table ... -->
    <!-- first item ... -->
    <input type="submit" value="Delete" name="delete1" />

    <!-- second item ... -->
    <input type="submit" value="Delete" name="delete2" />

    <!-- ... -->
</form>

別のボタンをクリックすると、押したボタンのみが投稿されます。IDを解析して、押したボタンを確認できます。

次のphpスクリプトでは、前に見た最初の削除ボタンを押すと、次のようになります。

<?php
    isset($_POST["delete1"]); //true
    isset($_POST["delete2"]); //false
?>

チェックボックスとオプション項目には、入力配列を使用します。

<input type="checkbox" name="check[]" value="firstitemid" />
<input type="checkbox" name="check[]" value="seconditemid" />

PHPコードでは、$ _POST['check']に配列を受け取ります。

クロスサイトリクエストフォージェリについてもお読みになることをお勧めします

于 2012-06-12T18:31:52.993 に答える