我试图把它放到ajax中,所以每当一个人点击jquery中的按钮时,它就会创建一个php会话。是否可以使用它?
var milisec=00;
var seconds=60;
function display(){
if (milisec<=0){
milisec=9
seconds-=1
}
if (seconds<=-1){
milisec=0
seconds+=1
}
else {
milisec-=1
document.getElementById('counter').innerHTML= seconds+":"+"0"+milisec+"s";
setTimeout(display,100)
}
if (seconds < 10) {
document.getElementById('counter').innerHTML= "0"+seconds+":"+"0"+milisec+"s";
}
}
display()
我需要发布使用ajax使用Php会话到达下一页所花费的时间。
答案 0 :(得分:1)
var seconds = 60;
var milisec = 0;
var stop_counter = false;
function display(){
if(milisec == 0)
seconds = seconds - 1;
milisec = milisec - 1;
if(milisec == -1)
milisec = 10;
$('#counter').html((seconds < 10 ? "0" : "") + seconds + ":0" +milisec+ "s");
if( (seconds == 0 && milisec == 0 && stop_counter == true) == false )
setTimeout(function(){ display(); }, 100);
}
$(document).ready(function(){
display();
$('#button').click(function(){
$.post('myphpfile.php', {time : $('#counter').text()}, function(data){
alert('Data from myphpfile.php: ' + data);
stop_counter = true; //stop counter now
});
});
});
myphpfile.php
echo 'you clicked button when counter was ' . $_POST['time'];
//you can do any php stuff here
这段代码应该做你想要的,但我没有测试它。
来自jQuery library的函数$ .post()会将您的数据传递给php脚本,并且还可以检索您可以在您的网站上显示的某些数据。
顺便说一句,一秒钟有1000毫秒,而不是100毫秒抱歉我的英文
答案 1 :(得分:0)
是的,您可以通过
在ajax调用中传递"seconds" and "milisec"
的值来实现
$(document).ready(function(){
$('#button').click(function(){
$.post('session_file.php', {secs : seconds,millisecs:milisec}, function(data){
});
});
});
所以在session_file.php中你可以在会话中写出secs and millisecs
变量的值