我正在创建一个脚本,让我说我有一个用户/传递进入,一旦它被输入,另一个页面将被重定向,并且该页面将显示一条线,表示你已经在这里停留了xxx秒.
我目前正在使用$_SESSION,但我不确定如何设置,因此time()将在登录后开始计数.
这是我的index.php脚本
if((isset($_GET["user"])) || (isset($_GET["pass"])))
{
if(($_GET["user"] == "a") && ($_GET["pass"] == "a"))
{
session_start();
$_SESSION["auth"] = 1;
$_SESSION["username"] = $_GET["user"];
$_SESSION["loginTime"] = time();
$_SESSION["timeLogged"] = time() - $_SESSION["loginTime"];
header("Location: 1.php");
}
else
{
echo "Incorrect login data";
}
}
这是我的1.php脚本
session_start();
if(!(isset($_SESSION["username"])))
{
header("location: index.php");
}
else
{
echo "Welcome " . $_SESSION["username"] . "<br/>";
echo "You have been logged in for " . $_SESSION["timeLogged"] . " seconds.";
}
最佳答案 使用$_SESSION(正如你所提到的)
第1页 – 在会话中存储当前时间(或任何时间)(cookie)
$_SESSION['startTime'] = time();
第2页 – 在我们传入cookie(在第1页上创建)时减去当前时间(意味着访问页面2的时间)
if (is_int($_SESSION['startTime'])){ // if the cookie exists:
$difference = time() - $_SESSION['startTime'];
} else { // if the cookie does not exist:
echo "You have been here some time in the future";
}
无论如何……这样的事情可能有用
编辑 – 使用您提供的代码:
移动$_SESSION [“timeLogged”] = time() – $_SESSION [“loginTime”];你的1.php脚本.一旦到达第二页,你需要计算差异:)
你有什么:
$_SESSION["loginTime"] = time();
$_SESSION["timeLogged"] = time() - $_SESSION["loginTime"];
最后一行是=当前时间 – (也是当前时间的变量)= 0