0

データベース テーブルのすべてのデータを HTML テーブルとしてページに表示します。管理者が行を選択すると、HTML テーブルの親行に「削除」のクラスが追加されます。

次に、mysqli データベースから削除します。行フィールドを変数として設定し、データベースで一致する行を削除しますか? どうすればいいのかわかりません。誰かが私を正しい方向に向けてもらえますか?

HTML

<table>
  <tr class="remove">
    <td>field1</td>
    <td>field2</td>
    <td>field3</td>
  </tr>
  <tr>
    <td>another field</td>
    <td>another field</td>
    <td>another field</td>
  </tr>
</table>

Mysqli (関連サンプル)

  $mysqli->query("DELETE FROM $table WHERE Date="??" LIMIT 1");
4

1 に答える 1

1

を使用している場合JavaScriptは、行が選択されているときに行にクラスを追加していると思いますが、次のことができます。

1. 各行に非表示の無効な入力を含めます。

<tr class="remove">
    <td>field1</td>
    <td>field2</td>
    <td>

        field3

        <input type="hidden" disabled name="delete[]" value="<?php echo $id; ?>">

    </td>
</tr>

2. 非表示の入力が選択されている場合は、非表示の入力を有効にします。

removeクラスを行に追加する方法を推測するつもりはありませんが、その場合、その中に含まれる非表示の入力のdisabled属性を削除します。delete[]

3. フォームを投稿します。

投稿したら、クエリを実行して、$_POST['delete']配列内の ID を持つすべての行を削除できます。

準備済みステートメントを使用している場合は、次のクエリを使用でき?ますimplode(',', $_POST['delete'])

"DELETE FROM " . $table . " WHERE FIND_IN_SET(id, ?) != 0"

簡単にするために、一意のフィールド (値の一部として s をid含まない) があると仮定しています。,明らかに、データベースに関連するものに変更してください。

于 2013-03-26T23:01:33.563 に答える