ID、ユーザー名などとともに学生のリストを表示する HTML フォームがあります。そのフォームのリンクをクリックして、個々の学生を削除する機能を追加する必要があります。MVC codeIgniter フレームワークを使用しているときに、PHP でこれを行うにはどうすればよいですか?
以下のフォーム ビューにコードを投稿しましたが、基本的には、PHP の foreach ループを使用して、データベース内の生徒のリストをループ処理しています。このループでは、生徒ごとにリンクを作成しています。 「削除」と表示され、クリックすると、生徒がクラスから削除されます。
各リンクには、学生の実際の削除を行う学生モデル クラスに含まれている PHP 関数を呼び出す onclick メソッドがあります。このようにしているときに私が経験している問題は、何らかの理由で、ページが最初に読み込まれるたびに、表示されているすべての学生が自動的に削除されることです。だから私の質問は、クリックされた生徒だけが削除され、現在のようにすべての生徒が削除されないようにする方法です。
私の MVC クラスの参考として、このビュー フォーム コードである user_index.php、モデル クラスである user_data_model.php、そして私の学生コントローラー クラスである user_controller.php があります。
ここに私のビューコード(user_index.php)があります:
<?php foreach ($userList as $user_item): ?>
...
<td>
<a href="" onclick="<?php $user_data_model->remove($user_item['user_name']); ?>">Remove</a>
</td>
<?php endforeach ?>
そして私のモデル関数 (user_data_model.php):
// remove a student
public function remove($username)
{
$this->db->where('student_user_name', $username);
$this->db->update('Student_table', array('student_password' => md5('inactive')));
}
上記のモデル コードからわかるように、学生のパスワードを文字列 "inactive" の暗号化されたバージョンに変更するだけなので、実際にテスト目的で学生を削除するわけではありません。
これに関するあらゆる種類のヘルプは非常に役立ちます。ありがとう!