每当我写echo $_GET['sec'];
时,它都会显示sec
的值
但是当我尝试以下代码时:
$(document).ready(function() {
setInterval(function () {
$('#div_id').load('../data.php?id_to=<?php $_GET['sec'];?>')
}, 100);
});
来自其他页面的“sec”的值不会转移到
带有data.php
变量的id_to
。
我的代码出了什么问题?
我可以在当前页面中看到$_GET['sec'];
的值,但该值在data.php
文件中不可用。
答案 0 :(得分:-1)
代码是可以的,如果可以的话应该传递
所以你能尝试的是:
你有一个简单的错误,你没有回应
将<?php $_GET['sec'];?>
更改为<?php echo $_GET['sec'];?>
或<?= $_GET['sec'] ?>
也:
这个php代码的输出是什么ile '../data.php?id_to=VALUE'
如果输出没问题,那么变量将通过GET方法传递
在你的data.php中尝试做一个echo $_GET['id_to']
,也许你试着输出秒而这会导致问题?
您可以随时在print_r($_GET);
data.php
醇>
答案 1 :(得分:-1)
您没有将GET变量输出到JS字符串中。
替换:
$('#div_id').load('../data.php?id_to=<?php $_GET['sec'];?>')
使用:
$('#div_id').load('../data.php?id_to=<?php echo $_GET['sec'];?>')
// That was missing ^
或者,可以使用php echo的简写:
$('#div_id').load('../data.php?id_to=<?= $_GET['sec'];?>')
虽然这里的语法高亮显示可能会使嵌套的单引号看起来干扰,但它们不会。 <?= $_GET['sec'];?>
将逐字地替换为sec
中的值,从而产生有效的JS字符串。