私はCodeIgniterでtodoリストを作成しています。CodeIgniterを使用してリストエンティティを安全に削除する方法
この方法では、現在ログインしているユーザーが作成したすべてのリストを取得できます。 I以下
<?php
$this->db->from('lists');
$current_user = $this->session->userdata('email');
$st="list_by='".$current_user."'";
$this->db->where($st, NULL, FALSE);
$q = $this->db->get();
foreach ($q->result() as $key => $row) {
echo "<li>" . $row->listTitle;
}
?>
この削除ボタンを持っている:私の質問は、私はid="<? $row->id;?>
を追加した場合、ユーザーは自分が作成しただけのリストを削除できるようにする方法、である
<a class="delete_button" onclick="return confirm('Delete list?');" href="<?php echo site_url('lists/list_delete');?>" ><i class="icon-cancel"></i></a>
、私はブラウザでコードを調べることができますidを別の値に変更し、他の誰かからリストを削除します。
これを保護する最善の方法は何ですか?
)あなたのフォームにAjax機能を追加することができますが、それは別の質問のトピックの唯一の方法は、その現在のユーザserver__ __onチェックすることですリストの所有者。 –
@u_mulderもう一度質問していただきありがとうございます。ボタンからIDの値を取得し、コントローラ/リストに移動して、現在この1つの関数list_deleteに移動します。 'public function list_delete(){ $ this-> db-> delete( 'lists'、array( 'id' => '1')); リダイレクト( 'lists'); } ' –
私はcodeigniterに慣れていませんが、'/lists/list_delete/ID'のようにURLを構築することができます。ここで 'ID'はリストのIDです。または、フォームを作成し、フォームフィールドとしてIDを渡して 'submit'イベントを処理します。 –