私は今、管理パネルを作成しようとしていますが、そこに3つのセクションを追加したいです:
- 投稿を編集
- 投稿を削除
- 投稿を追加
ファイル admin.php でセッションを使用していますが、この 3 つのセクションを分離する方法がわかりません。このメソッドを使用して、ページ admin.php の 3 つのセクションを作成します。
- /admin.php?id=編集
- /admin.php?id=削除
- /admin.php?id=追加
この決定は正しいですか?
あなたの答えは「しかし、この3つのセクションを分ける方法がわかりません」:
if(isset($_GET['id'])){
switch($_GET['id']){
case 'add':
//your code
break;
case 'edit':
//your code
break;
case 'delete':
//your code
break;
default:
//your code if some one pass anything else add/edit/remove
}
}
コードで同じ方法を使用していますが、問題はありませんが、コードのセキュリティを確認する必要があります。
私が間違っている場合は修正してください
これは正しいですが、初心者のハッカーにとっては操作が少し難しいため、POST を使用することをお勧めします。また、ユーザーが「編集」や「削除」などの危険なセクションにアクセスする権限を持っていることを確認してください。
また、セキュリティ上の推奨事項として、admin.php ファイルの名前を見つけにくい名前に変更する必要があります。潜在的なハッカーは、最もよく知られている管理セクション名を試して侵入を試みる自動化ツールを使用しています。名前が一意の場合、壊そうとする前に難しさを追加します。
すべての管理ページが単一のセキュアな基本クラスから継承されるようにコードを構成します。すべてのサブクラスは機能的に必要なものを実装できるため、巨大なファイルが 1 つになることはなく、セキュリティの観点からすべてを簡単に維持できます。システムへのメイン エントリ ポイントは、単純な switch ステートメントまたはその他のメソッドを使用してリクエストをルーティングすることで、http パラメータに基づいて適切なクラスとメソッドを呼び出す admin.php ページになります。