会话计时器并将用户名传递到结束页面
Session timer and pass username to end page
如何在第一页显示从下拉列表中选择的用户名并在最后一页显示用户名而不逐页传递变量?另外,如果我想在中间页面上添加一个计时器,我如何将它放入 php 会话中并使经过的时间显示在带有用户名的结束页面上。谢谢!
这是登录页面的代码
<p id="Hello world 1"></p>
<input type="text" value="Hello world 1">
<center>Centre Name
<select id="Centre_Name" id="Centre_Name" , name="Centre_Name">
<option value="Please Select">Please Select</option>
<option value="AAA">AAA</option>
<option value="BBB">BBB</option>
<option value="CCC">CCC</option>
<option value="DDD">DDD</option>
</select>
<a href="hello%20test%20file/Hello%20world%202.html"><input type="button" id="btnQueryString" value="Submit" /></a>
2。第二页有一个javascript记录当前时间的功能。
<p id="Hello world 2"></p><br>
<button onclick="sessionstart()">start lesson</button>
<p id="starttime"></p>
<script>
function addZero(i) {
if (i < 10) {
i = "0" + i;
}
return i;
}
var d = new Date();
var x = document.getElementById("starttime");
var a = addZero(d.getHours());
var b = addZero(d.getMinutes());
function sessionstart() {
x.innerHTML = a + ":" + b ;
}
</script>
<a href="file:///C:/Users/LLJ/Desktop/hello%20test%20file/Hello%20world%203.html"><input type="button" id="button"value="next" onclick="display_c(start)"></a>
在第 1 页,放下您的下拉列表并以表格形式提交。将提交定向到第 2 页。
<form action="page2.php" method="POST">
//your dropdown
<input type="submit" value="Submit" />
</form>
<?php
session_start();
//clean out a possible previous session
session_unset();
?>
在第 2 页 上,与 session_start()
开始 php 会话并
将发布的值存储在 session_var:
中
<?php
//DON'T forget to sanitize your $_POST variables!!!
session_start();
$_SESSION['myvar1']=$_POST['myvar1'];
$_SESSION['myvar2']=$_POST['myvar2'];
//if you want a timer
$_SESSION['time_started']=time();
echo $_SESSION['myvar1'];
echo $_SESSION['myvar2'];
echo '<a href="page3.php">goto page 3</a>';
?>
现在,只要用户的浏览器保持打开状态,您就可以访问 $_SESSION['variable']
,而无需逐页传递:
第 3 页
<?php
session_start();
if(!isset($_SESSION['myvar1'],$_SESSION['myvar1']){
// ====> redirect to page 1
}
//check your timer: -900 is 15 minutes in seconds
if($_SESSION['time_started']<time()-900){
echo 'Too bad, it took you too long and now you failed';
die;
}
echo $_SESSION['myvar1'];
echo $_SESSION['myvar2'];
echo '<a href="page3.php">let's page 4</a>';
?>
如何在第一页显示从下拉列表中选择的用户名并在最后一页显示用户名而不逐页传递变量?另外,如果我想在中间页面上添加一个计时器,我如何将它放入 php 会话中并使经过的时间显示在带有用户名的结束页面上。谢谢! 这是登录页面的代码
<p id="Hello world 1"></p>
<input type="text" value="Hello world 1">
<center>Centre Name
<select id="Centre_Name" id="Centre_Name" , name="Centre_Name">
<option value="Please Select">Please Select</option>
<option value="AAA">AAA</option>
<option value="BBB">BBB</option>
<option value="CCC">CCC</option>
<option value="DDD">DDD</option>
</select>
<a href="hello%20test%20file/Hello%20world%202.html"><input type="button" id="btnQueryString" value="Submit" /></a>
2。第二页有一个javascript记录当前时间的功能。
<p id="Hello world 2"></p><br>
<button onclick="sessionstart()">start lesson</button>
<p id="starttime"></p>
<script>
function addZero(i) {
if (i < 10) {
i = "0" + i;
}
return i;
}
var d = new Date();
var x = document.getElementById("starttime");
var a = addZero(d.getHours());
var b = addZero(d.getMinutes());
function sessionstart() {
x.innerHTML = a + ":" + b ;
}
</script>
<a href="file:///C:/Users/LLJ/Desktop/hello%20test%20file/Hello%20world%203.html"><input type="button" id="button"value="next" onclick="display_c(start)"></a>
在第 1 页,放下您的下拉列表并以表格形式提交。将提交定向到第 2 页。
<form action="page2.php" method="POST">
//your dropdown
<input type="submit" value="Submit" />
</form>
<?php
session_start();
//clean out a possible previous session
session_unset();
?>
在第 2 页 上,与 session_start()
开始 php 会话并
将发布的值存储在 session_var:
<?php
//DON'T forget to sanitize your $_POST variables!!!
session_start();
$_SESSION['myvar1']=$_POST['myvar1'];
$_SESSION['myvar2']=$_POST['myvar2'];
//if you want a timer
$_SESSION['time_started']=time();
echo $_SESSION['myvar1'];
echo $_SESSION['myvar2'];
echo '<a href="page3.php">goto page 3</a>';
?>
现在,只要用户的浏览器保持打开状态,您就可以访问 $_SESSION['variable']
,而无需逐页传递:
第 3 页
<?php
session_start();
if(!isset($_SESSION['myvar1'],$_SESSION['myvar1']){
// ====> redirect to page 1
}
//check your timer: -900 is 15 minutes in seconds
if($_SESSION['time_started']<time()-900){
echo 'Too bad, it took you too long and now you failed';
die;
}
echo $_SESSION['myvar1'];
echo $_SESSION['myvar2'];
echo '<a href="page3.php">let's page 4</a>';
?>