0

私はPHPが初めてで、以前にセッションを使用したことがありません。少し読んで、それらが何をするのか、どのように使用できるべきかを理解しました。

ただし、セッションを作成すると、セッションが正常に作成されるようです (コードが実行され、Cookie を調べると、Web サイトからのエントリが表示されます)、同じページで $_SESSION 値を設定することもできますが、入力するとすぐに別のページ、セッションがリセットされたようです。

これが私のコードです:

$sessionid = md5(uniqid(microtime()) . $_SERVER['REMOTE_ADDR'] . $_SERVER['HTTP_USER_AGENT']);
ini_set('session.auto_start', 1);
ini_set('session.lifetime', 2678400);
ini_set('session.use_cookies', 1);
ini_set('session.cache_limiter', 'private_no_expire');
session_start($sessionid);

// Also tested that setting these doesn't give an error either
$_SESSION['Username'] = //Code to get username
$_SESSION['UserID'] = // Code to get userID

echo "<script language='Javascript'>";
echo "window.location='" . $forwardpage . "';";
echo '</script>';
exit();

どんな助けでも感謝されます

4

1 に答える 1

2

問題は、スクリプトをロードするたびに新しいセッション ID が作成され、クライアントに送信されることです。$sessionid 変数をスキップすると、php によってセッション ID が生成され、機能します。

したがって、 $sessionid なしで session_start() を使用します

于 2012-08-13T09:20:54.027 に答える