0

ユーザーをアクティブ化または非アクティブ化するためのリンクがある小さなシステムを使用しています..

だから私はユーザーを一覧表示する機能を持っています

function users()
{
//the code
}

IDである3番目のuriセグメントを取得し、ユーザーをアクティブまたは非アクティブに設定する関数があります。

function action_settings()
{
// the code
}

私は action_settings が関数ユーザーを介してのみアクセスされ、ユーザーがその関数に直接アクセスできないようにしたいと考えています。

だからリンク

localhost/motivators/action_settings/25

からのリンクからのみアクセスできる必要があります。

localhost/motivators/users/

Codeigniter でこの制限を実装することは可能ですか?

4

2 に答える 2

1

できることはuri->uri_string、関数(メソッド)の引数としてを指定し、action_stringそれを解析して、含まれているmotivators/users/かどうかを確認するか、プロセスusersを続行するaction_stringことです。そうでなければ、しないでください。

于 2013-01-12T17:09:32.790 に答える
1

関数 action_settings() 内で試してください:

function action_settings(){

 if($_SERVER['HTTP_REFERER'] != 'http://localhost/motivators/users'){
  //wrong referer
  exit();
 }

 //activate user
}

次の場合もあります。

function action_settings(){

 if($_SERVER['HTTP_REFERER'] != base_url() . 'motivators/users'){
  //wrong referer
  exit();
 }

 //activate user
}
于 2013-01-12T17:15:07.013 に答える