0

メールアドレスを入力したときにのみアクセスできるようにしたいウェブページがあります。私は現在、ユーザーの電子メールアドレスを収集し、電子メールの確認を送信し、確認ページを表示する電子メールシステム(PHP)を導入しています。

私がやろうとしているのは、この確認ページが2番目のWebページに移動する唯一のページになるようにすることです。他の場所からこの2番目のWebページにアクセスしようとすると、アクセスを拒否するか、エラーを出すか、電子メールの入力を求められたページに戻る必要があります。

だから私の質問は、2つのWebページ間にハンドシェイクを作成して他のすべてのリクエストをブロックするにはどうすればよいですか?

同じ結果を得る別の方法を知っている場合は、2つのWebページ間でハンドシェイクを必要としない、これを行うためのより良い方法があるかもしれません。これまでのところ、私は初心者ですが、htaccessを使用してこれを行う方法があるかもしれないと思っていました。

4

1 に答える 1

0

確認リンクでメールアドレスを渡すことができ、ユーザーが確認ページにアクセスしたら、セッション変数を作成してtrueにします。その後、2ページ目のセッション変数を確認します。セッション変数がある場合はページを表示し、そうでない場合はメール入力ページにリダイレクトします。

Click to confirm (www.example.com/confirm.php?email=user1@example.com)
if(user1@example.com is in DB)
{
 session['isUser'] = true;
}

確認ページで

if(isset(session['isUser'])){
 if(session['isUser']==true){
  Display the page
 }
 else{
  redirect to subscription page
 }
}
else{
  redirect to subscription page
}
于 2012-12-13T04:04:04.923 に答える