當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Web::sessionDestroy方法代碼示例

本文整理匯總了PHP中Web::sessionDestroy方法的典型用法代碼示例。如果您正苦於以下問題:PHP Web::sessionDestroy方法的具體用法?PHP Web::sessionDestroy怎麽用?PHP Web::sessionDestroy使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Web的用法示例。


在下文中一共展示了Web::sessionDestroy方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: logout_GET

function logout_GET(Web &$w)
{
    if ($w->Auth->loggedIn()) {
        // Unset all of the session variables.
        $w->sessionDestroy();
    }
    $w->redirect($w->localUrl("/auth/login"));
}
開發者ID:itillawarra,項目名稱:cmfive,代碼行數:8,代碼來源:logout.php

示例2: resetpassword_POST

function resetpassword_POST(Web $w)
{
    $email = $w->request('email');
    // email
    $token = $w->request('token');
    // token
    $password = $w->request('password');
    // password
    $password_confirm = $w->request('password_confirm');
    if ($password !== $password_confirm) {
        $w->error("Passwords do not match", "/auth/resetpassword?email={$email}&token={$token}");
        return;
    }
    $user = $w->Auth->getUserForToken($token);
    //getObject("User", array("password_reset_token", $token));
    $validData = false;
    if (!empty($user->id)) {
        // Check that the password reset hasn't expired
        if (time() - strtotime($user->dt_password_reset_at) < 0) {
            $w->msg("Your token has expired (max 24 hours), please submit for a new one", "/admin/forgotpassword");
            return;
        }
        $user_contact = $user->getContact();
        if (!empty($user_contact)) {
            if ($user_contact->email == $email) {
                $user->setPassword($password);
                $user->password_reset_token = null;
                $user->dt_password_reset_at = null;
                $user->update(true);
                // Precautionary logout
                if ($w->Auth->loggedIn()) {
                    $w->sessionDestroy();
                }
                $validData = true;
            }
        }
    }
    if (!$validData) {
        $w->Log->warn("Password reset attempt failed with email: {$email}, token: {$token}");
        $w->out("Invalid email or token, this incident has been logged");
    } else {
        $w->msg("Your password has been reset", "/auth/login");
    }
}
開發者ID:itillawarra,項目名稱:cmfive,代碼行數:44,代碼來源:resetpassword.php


注:本文中的Web::sessionDestroy方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。