2012-03-25 13 views
2

私はZendを使用しています。投稿へのリンクを含むすべてのメンバーに電子メールが送信されています。ログインしたメンバーだけがコメントできますが、すべてのゲストがそれを見ることができます。もちろん、電子メールのリンクをクリックしている人はすぐにコメントすることができます。私が知りたい何この理由は、リンクをクリックメンバーがログインされているかどうかチェックする方法であるために : -Zend:電子メールからのURLでログインした後、ページにリダイレクト

  • すでに電子メールでURLにログインしている場合にメンバーを取る必要があります直接ポスト。
  • ログインしていない場合は、ログインページにメンバーを転送してから、リンクに含まれている適切なURLに転送します。

私は自分自身を説明しました。もしそうでないなら私に尋ねてください。誰かがそれを行う最善の方法をアドバイスしてもらえますか?

ありがとうございます。ユーザーが自分の資格情報を入力した後、この保存されたURLに彼をリダイレクトし、その後

$this->_session->lastUrl = $this->getRequest()->getRequestUri(); 

を:F.

答えて

1
public function emailAction() 
{ 
$loggedIn = Zend_Auth::getInstance()->getIdentity(); 
if($loggedIn) 
{ 
$this->_helper->_forward('post); 
}else { 

    $this->_helper->_forward('login'); 
} 
} 

public function loginAction() 
{ 
$success = new Zend_Session_Namespace('success'); 
if(!isset($success->url)) 
{ 
    $success->url = $this->view->serverUrl(true); 
} 
$form = new Login_Form(); 
if($this->getRequest()->isPost() && $form->isValid($_POST)) 
{ 
$this->_redirect($success->url); 
} 

} 
+0

非常に興味深いです。ありがとうございました。 – firefiter

2

は、プラグインを作成し、使用してのセッションで要求されたURIを保存します。

別のオプションは、URLを保存し、Google、Yahoo、およびSOのような次のリクエストにパラメータとして追加することです。

+0

Liyaliありがとうございます。私はこれを調べます – firefiter

+0

あなたは歓迎です;) – Liyali

関連する問題