0

ユーザーログインシステムを作成し、この機能でセッションを開始しました

function sessionStart() {
    $session_name = 'sec_session_id'; // Set a custom session name
    $secure = false; // Set to true if using https.
    $httponly = true; // This stops javascript being able to access the session id. 

    ini_set('session.use_only_cookies', 1); // Forces sessions to only use cookies. 
    $cookieParams = session_get_cookie_params(); // Gets current cookies params.
    session_set_cookie_params($cookieParams["lifetime"], $cookieParams["path"], $cookieParams["domain"], $secure, $httponly); 
    session_name($session_name); // Sets the session name to the one set above.
    session_start(); // Start the php session
    session_regenerate_id(true); // regenerated the session, delete the old one. 
}

上記の機能でわかるように、セッションCookieを使用します。このセッションをmemcachedに保存して、操作を強化します。ユーザーデータを保存するCookieを作成する必要があります。たとえば、ユーザーIDが必要な場合は保存しますこのようなCookieのユーザーID

setcookie('userid','1234',time()+240000)

その後、ユーザーがログインしたままにする場合は、ユーザーのパスワードとユーザー名が必要です。しかし、Cookie にパスワードを保持しないでください。では、ユーザーをログイン状態に保つにはどうすればよいでしょうか。説明してください。わざわざコードを書く必要はありません。

前もって感謝します

4

1 に答える 1

0

クライアントのログイン データを SQL データベースに保持し、SQL 行にランダムなソルト + ハッシュを与えてから、そのハッシュを Cookie に割り当てることをお勧めします。次に、毎回データベースから情報を取得します。

于 2013-08-05T20:13:48.850 に答える