我正在后端页面(thread.php)中进行一些处理,它基本上返回dateposted和当前时间之间的时间段的值。 前端页面(index.php)向thread.php发送一个请求,其中包含dateposted的值。页面thread.php接受dateposted并相应地返回值。然后index.php将使用返回值的最后一个值,并将dateposted设置为此值,该值将再次作为请求发送。所以这是一个循环。但是,我在将index.php中的值“dateposted”发送到thread.php时遇到问题。
$dateposted = '1328098097623';
<script language="JavaScript">
var dateposted = <?php echo $dateposted ?>;
function returnValue()
{
$.ajax({
async: true,
type: "GET",
url: "thread.php",
data: {lastposted : dateposted},
success: function (html) {
if(html)
{
var newDiv = $('<div/>').html(html);
$('#chatContents').append(newDiv);
}
}
});
}
</script>
这是我在thread.php中接受传递的变量的原因。
if(!isset( $lastpost)){
$lastpost = 0;
}else{
$lastpost = $_REQUEST["lastposted"];
}
基本上我现在已经硬编码“dateposted”。我不知道如何通过ajax将php变量传递到另一个页面。提前致谢
答案 0 :(得分:1)
快速浏览一下,我建议你首先用引号“”来说明你的php echo变量。
var dateposted = <?php echo "$dateposted" ?>;
这是为了让你的javascript语法正确。第二个将函数(html)替换为函数(数据)..因为这是你要发送的对象并将你的类型更改为POST。最后在你的php脚本中更改它
if(!isset($_POST['lastposted'])){ $lastpost = false; }else{$lastpost=$_POST['lastposted'];}
答案 1 :(得分:0)
你需要在ajax(thread.php)调用的脚本末尾'回显'$ lastpost。您还需要检查isset($ _ GET ['lastpost'])或$ _POST ['lastpost']。在你的情况下应该得到:
if(!isset( $_GET['lastposted'])){
$lastpost = 0;
}else{
$lastpost = $_GET["lastposted"];
}
echo $lastpost;
您的变量也不匹配 - 检查if isset和赋值的拼写。